[SpringBoot] 스프링부트 프로젝트 생성 후 Swagger 사용 및 테스트하기2 REST PULL테스트~컨트롤러 추가 테스트~(만들기 스프링부트3.25 )_IntelliJ IDEA 2024.1JDK17 spring-boot test api ajax json--++

 * 초기 세팅 (개발환경) 및 설정 

https://rockbottomdevbus.blogspot.com/2024/04/springboot-1-325-intellij-idea-20241.html

* 이전 글 

[SpringBoot] 스프링부트 프로젝트 생성 후 Swagger 사용 및 테스트하기1 REST PULL테스트~Swagger 사용방법~(만들기 스프링부트3.25 )_IntelliJ IDEA 2024.1JDK17 spring-boot test api ajax json--++

https://rockbottomdevbus.blogspot.com/2024/04/springboot-swagger-1-rest-pullswagger.html


* 컨트롤러 추가

- ReplyController 파일 생성  

1. controller 패키지 생성 >> 경로 : /main/java/{pakage name}/controller

2. ReplyController.java 클래스 생성 >> 1번 경로에 생성 게시판(댓글) 컨트롤 생성

-- ReplyController.java 

package org.zerock.b01.controller;

import io.swagger.v3.oas.annotations.Operation;
import lombok.extern.log4j.Log4j2;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.zerock.b01.dto.ReplyDTO;

import java.util.Map;

@RestController
@RequestMapping("/replies")
@Log4j2
public class ReplyController {

@Operation(summary = "Replies Post - Post방식으로 댓글 등록") // swagger 테스트 시 사용하는 표기 방법
@PostMapping(value = "/",consumes = MediaType.APPLICATION_JSON_VALUE ) // consumes 는 데이터에 대한 타입 지정
public ResponseEntity<Map<String,Long>> register (
@RequestBody ReplyDTO replyDTO){
log.info(replyDTO);
Map<String,Long> resultMap = Map.of("rno",111l);
return ResponseEntity.ok(resultMap);
}
}


* DTO 추가

- ReplyDTO 파일 생성  

1. dto 패키지 생성 >> 경로 : /main/java/{pakage name}/dto

2. ReplyDTO.java 클래스 생성 >> 1번 경로에 생성 게시판(댓글) dto 생성

-- ReplyDTO.java 

package org.zerock.b01.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

@Data //getter
@Builder //@Data 어노테이션은 @Getter / @Setter, @ToString, @EqualsAndHashCode @RequiredArgsConstructor 를 합쳐놓은 종합 선물 세트
@AllArgsConstructor //모든필드 생성자 주입
@NoArgsConstructor // 기본 생성자 주입
public class ReplyDTO {
private long rno;
private long bno;
private String replyText;
private String replyer;

private LocalDateTime regDate, modDate;

}


- 로컬 테스트

1. 아래화면 확인

http://localhost:8090/swagger-ui/index.html


2. 1번화면의 reply-controller post 부분 선택


3. 2번화면의  reply-controller post 부분 선택 >>  Try it out 버튼 선택


4. 3번화면의  reply-controller post 부분 선택 >>  Excute 버튼 선택 >> 아래화면과 같이 나온다면 성공 


* 다음 글 

[SpringBoot] 스프링부트 프로젝트 생성 후 Swagger 사용 및 테스트하기3 REST PULL테스트~에러예외처리~(만들기 스프링부트3.25 )_IntelliJ IDEA 2024.1JDK17 spring-boot test api ajax json--++


* 참고 

https://springdoc.org/

댓글

T O P