Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 820cb20

Browse files
authored
Merge pull request #21 from codej99/feature/board
add api
2 parents 200168c + 37b4b9c commit 820cb20

File tree

3 files changed

+18
-1
lines changed

3 files changed

+18
-1
lines changed

‎src/main/java/com/rest/api/controller/v1/board/BoardController.java‎

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,15 @@ public class BoardController {
2828
private final BoardService boardService;
2929
private final ResponseService responseService;
3030

31+
@ApiImplicitParams({
32+
@ApiImplicitParam(name = "X-AUTH-TOKEN", value = "로그인 성공 후 access_token", required = true, dataType = "String", paramType = "header")
33+
})
34+
@ApiOperation(value = "게시판 생성", notes = "신규 게시판을 생성한다.")
35+
@PostMapping(value = "/{boardName}")
36+
public SingleResult<Board> createBoard(@PathVariable String boardName) {
37+
return responseService.getSingleResult(boardService.insertBoard(boardName));
38+
}
39+
3140
@ApiOperation(value = "게시판 정보 조회", notes = "게시판 정보를 조회한다.")
3241
@GetMapping(value = "/{boardName}")
3342
public SingleResult<Board> boardInfo(@PathVariable String boardName) {
@@ -44,7 +53,7 @@ public ListResult<Post> posts(@PathVariable String boardName) {
4453
@ApiImplicitParam(name = "X-AUTH-TOKEN", value = "로그인 성공 후 access_token", required = true, dataType = "String", paramType = "header")
4554
})
4655
@ApiOperation(value = "게시글 작성", notes = "게시글을 작성한다.")
47-
@PostMapping(value = "/{boardName}")
56+
@PostMapping(value = "/{boardName}/post")
4857
public SingleResult<Post> post(@PathVariable String boardName, @Valid @ModelAttribute ParamsPost post) {
4958
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
5059
String uid = authentication.getName();

‎src/main/java/com/rest/api/entity/board/Board.java‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,19 @@
11
package com.rest.api.entity.board;
22

33
import com.rest.api.entity.common.CommonDateEntity;
4+
import lombok.AllArgsConstructor;
5+
import lombok.Builder;
46
import lombok.Getter;
57
import lombok.NoArgsConstructor;
68

79
import javax.persistence.*;
810
import java.io.Serializable;
911

12+
@Builder
1013
@Entity
1114
@Getter
1215
@NoArgsConstructor
16+
@AllArgsConstructor
1317
public class Board extends CommonDateEntity implements Serializable {
1418
@Id
1519
@GeneratedValue(strategy = GenerationType.IDENTITY)

‎src/main/java/com/rest/api/service/board/BoardService.java‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@ public class BoardService {
3434
private final UserJpaRepo userJpaRepo;
3535
private final CacheSevice cacheSevice;
3636

37+
public Board insertBoard(String boardName) {
38+
return boardJpaRepo.save(Board.builder().name(boardName).build());
39+
}
40+
3741
// 게시판 이름으로 게시판을 조회. 없을경우 CResourceNotExistException 처리
3842
@Cacheable(value = CacheKey.BOARD, key = "#boardName", unless = "#result == null")
3943
public Board findBoard(String boardName) {

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /