본문 바로가기

스프링부트12

6. 게시판 등록 api 만들어 보기 해당 게시물들은 이동욱 저자님의 "스프링 부트와 AWS로 혼자 구현하는 웹 서비스"를 공부하며 기록한 것입니다. 이번 게시물은 게시물 등록, 수정, 조회를 위한 api를 만들도록 할 것 이다. api를 만들기 위해서는 1. Request 데이터를 받을 Dto 2. API 요청을 받을 Controller 3. 트랜잭션, 도메인 기능간의 순서를 보장하는 Service 왜 도메인 모델을 다루는지에 대한 설명은 책에 이루어져 있다. 우선 web 패키지에 PostsApiController, web.dto 패키지에 PostsSaveRequestDto, service.posts 패키지 생성 후 PostsService를 생성하고 작성한다. 책에서도 언급되어있으나 Entity클래스와 거의 유사함에도 불구하고 Dto클래스.. 2021. 7. 16.
5. Spring 웹 계층 정리 해당 게시물들은 이동욱 저자님의 "스프링 부트와 AWS로 혼자 구현하는 웹 서비스"를 공부하며 기록한 것입니다. 등록, 수정, 삭제 api를 작성하기 전에, Spring 웹 계층을 한번 정리하고 진행할 것이다. Spring에서는 웹 계층을 크게 Web Layer, Service Layer, Repository Layer으로 나눈다. 우선 Web Layer는 브라우저 상의 웹 클라이언트의 요청, 응답을 처리하는 곳이다. 흔히 사용하는 @Controller, 그리고 JSP/Freemarker 등의 뷰 템플릿(HTML, CSS와 같은 마크업 속성과 뷰 인스턴스에서 정의한 데이터, 로직들을 연결해 브라우저에서 볼 수 있는 HTML형태로 변환해 주는 것)의 영역이다. + 이 외에도 외부 요청과 응답에 대한 전반적.. 2021. 7. 16.
4. JPA 사용해보기 해당 게시물들은 이동욱 저자님의 "스프링 부트와 AWS로 혼자 구현하는 웹 서비스"를 공부하며 기록한 것입니다. 이번 게시물에서는 JPA를 활용하여 이 책에서 앞으로 실습하게 될 게시판을 만들어 보도록 할 것이다. 이때 웹 서비스를 다루게 된다면 필수적으로 데이터베이스를 관리하게 된다. 하지만 개발을 진행할 시, 실제로 개발하는 시간보다 SQL문을 다루는 시간이 더 많아지게 된다. 객체 모델링보다는 테이블 모델링에 시간을 쏟고, 할애하게 된다. 이를 위해 JPA라는 기술을 사용하게 된다. JPA를 사용하면, 개발자는 객체지향적으로 코딩을 하고, JPA가 이를 보고 SQL을 대신 생성해서 실행하는 과정을 진행하게 된다. 따라서 개발자는 SQL에 매달리는 시간을 줄일 수 있게 된다. 따라서 유지 보수에서 또.. 2021. 7. 14.
3. 롬복 해당 게시물들은 이동욱 저자님의 "스프링 부트와 AWS로 혼자 구현하는 웹 서비스"를 공부하며 기록한 것입니다. 이번 게시물에서는 롬복 설치, hellocontroller를 롬복으로 전환해 볼 것이다. 기존의 controller를 롬복으로 전환할 경우 어떤 기능에 문제가 생길 지 모르지만, 우리는 테스트 코드를 통해 동작 여부를 확인할 수 있다. 우선 기존 build.gradle에 lombok 을 추가한후, gradle을 새로고침하여 라이브러리를 다운받는다. 그 후, .ignore를 받을때와 같이 Ctrl+Shift+A(맥은 Command+Shift+A)를 입력한 후 plugins을 입력한다. 그 후 marketplace에서 Lombok을 찾아 설치한후, intelij ide를 재시작한다. 마지막으로 E.. 2021. 7. 14.