HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
👊
[승찬민] Around The Town (동네한바퀴)
/
💬
API Spec
/
사장님 정보 등록

사장님 정보 등록

URI
/api/v1/hosts
담당자
Method
POST
진행상태
COMPLETE

Request

{ "hostName":"이름", "hostEmail":"lee@gamil.com", "hostPhoneNumber":"01022223333" }
 

Response(Body)

HTTP/1.1 201 Created Content-Type: application/json;charset=UTF-8 Content-Length: 82 { "statusCode" : 201, "data" : 1, "serverDatetime" : "2021-11-17 15:16:52" }
 
단일 Long값만 내려주는 경우에는 ApiResponse를 이용해서 내려준다. (아래 예시)
@Getter @Setter @NoArgsConstructor public class ApiResponse<T> { private int statusCode; private T data; @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Seoul") private LocalDateTime serverDatetime; public ApiResponse(final int statusCode, final T data) { this.statusCode = statusCode; this.data = data; this.serverDatetime = LocalDateTime.now(); } public static <T> ApiResponse<T> ok(final T data) { return new ApiResponse<>(200, data); } public static <T> ApiResponse<T> created(final T data) { return new ApiResponse<>(201, data); } public static <T> ApiResponse<T> fail(final int statusCode, final T errData) { return new ApiResponse<>(statusCode, errData); } }
@AllArgsConstructor @RestController @RequestMapping("/api/v1") public class HostController { private final HostService hostService; @PostMapping("/hosts") @ResponseStatus(code = HttpStatus.CREATED) public ResponseEntity<ApiResponse<Long>> saveHost(@RequestBody final HostCreateRequestDto hostCreateRequestDto) { return new ResponseEntity<>(ApiResponse.created(hostService.createHost(hostCreateRequestDto)), HttpStatus.CREATED); } }