Read
Board 에 글 읽기 기능을 수행하는 코드를 추가한다
요청 URL은 GET http://localhost:8080/board/{id} 으로 지정
Controller 코드이다. boardService의 getBoardById 로 URL에서 받은 변수 id를 넘겨준다
@GetMapping(value = "/{id}")
public ApiResponse<BoardDTO> getBoardById(@PathVariable int id) throws Exception {
return boardService.getBoardById(id);
}
Service부분의 코드. DAO의 getBoardById로 id값을 넘겨 수행하고 수행한 값을 return한다
public ApiResponse<BoardDTO> getBoardById(int id) {
BoardDTO data = boardDAO.getBoardById(id);
return new ApiResponse(true, data);
}
Mapper에 쿼리가 담겨있다. int = id값을 받으면 쿼리를 수행하고 ResultType 속성으로 값을 반환해
BoardDTO로 결과를 보내준다
<select id="getBoardById" parameterType="int" resultType="kr.ac.daegu.springbootapi.board.model.BoardDTO">
SELECT * from Board
WHERE id = #{id}
</select>
아래는 내가 작성한 쿼리...
select후 반환하는 방법을 잘 몰라서 이리저리 해메다가 완성(?)한 쿼리이다
리뷰를 하고 보니 resultMap을 왜 분리시켜서 놔뒀는지... 구글링하다가 찾은 방법을 급하게 썼었나봐..
(그래도 실행은 잘 됐었다...)
<select id="getBoardRead" parameterType="kr.ac.daegu.springbootapi.board.model.BoardDTO" resultMap="boardRead">
Select * from board where id=#{id}
</select>
<resultMap id="boardRead" type="kr.ac.daegu.springbootapi.board.model.BoardDTO"/>

인생..
'Spring Boot > Spring Boot' 카테고리의 다른 글
42 : Springboot (글과 댓글 함께 출력) (0) | 2021.10.07 |
---|---|
41: Springboot (Delete-board) (0) | 2021.10.01 |
38 : Springboot (insert - test, board) (0) | 2021.09.29 |
37 : Springboot (Board - Mybatis) (0) | 2021.09.29 |
36-2 : Springboot (Service) (0) | 2021.09.29 |