전체 글
-
11. 스프링부트와 AWS - 게시글 조회, 수정 API 만들기실습/AWS 2021. 5. 7. 04:28
10. 스프링부트와 AWS - 게시글 등록 API 만들기 지난번 오늘 쓸 내용을 다루다가 내용이 산으로 가서...게시판을 마저 만들도록 하자. 게시물 등록용 API를 만들기 위해선 총 3개의 클래스가 필요하다. - Request 데이터를 받을 dto - API 요청을 받을 sgcomputer.tistory.com 이전 글에서 게시글 등록 API를 만들었다. 이번에는 게시글 조회, 수정 API를 만들어보자. 우선 조회 및 수정 API를 위해 전체적으로 할 일은 다음과 같다. - PostsResponseDto(조회용 Dto) 클래스 생성 - PostsUpdateDto(업데이트용 Dto) 클래스 생성 - PostsApiController 클래스 수정 - PostsService 클래스 수정 - Posts 클래스..
-
10. 스프링부트와 AWS - 게시글 등록 API 만들기실습/AWS 2021. 5. 7. 02:34
지난번 오늘 쓸 내용을 다루다가 내용이 산으로 가서...게시판을 마저 만들도록 하자. 게시물 등록용 API를 만들기 위해선 총 3개의 클래스가 필요하다. - Request 데이터를 받을 dto - API 요청을 받을 Controller - 트랜잭션, 도메인 기능 간의 순서를 보장하는 Service 간단히 설명하면 사용자가 요청하는 Controller. 전달받은 내용과 데이터를 전달하는 dto. 이를 처리할 수 있도록 도와주는 Service. 이렇게 구성을 할 예정이다. 클래스 만들기 위에서 이야기했듯 만들어야 할 클래스는 총 3개다. - src/main/java/com/my/practice00/springboot/controller/PostsApiController - src/main/java/com/m..
-
9. 스프링부트와 AWS - 트랜잭션 스크립트, 도메인 모델실습/AWS 2021. 5. 5. 13:53
JPA를 설정했다면 이제 게시판에 쓸 게시글 등록, 수정, 조회를 위한 API를 만들 차례다. API 만들기 전 알아둘 것 API를 만들기 위해 필요한 클래스는 총 3개다. - Request한 데이터를 받을 Dto - API 요청을 받을 Controller - 트랜잭션, 도메인 기능 간의 순서를 보장하는 Service 위의 내용을 보면 비즈니스 로직에 대한 부분이 없는 것을 알 수 있다. 이것에 대해 이해를 하려면 내용이 기니까 여기서 짚고 넘어가보자. 위 그림은 책에 나와있는 그림으로 Spring Web 계층에 대해 설명하는 그림이다. 책에서는 위 그림을 예시로 들며 우리가 흔히 Service에서 비즈니스 로직을 처리하는 것으로 오해한다고 쓰여있다. 실제로 국비 지원 과정서에서 비즈니스 로직을 서비스 ..
-
8. 스프링부트와 AWS - JPA 시작하기실습/AWS 2021. 5. 5. 09:00
프로젝트에 Spring Data JPA 적용하기 우선 build.gradle에 의존성을 등록한다. - spring-boot-starter-data-jpa: 스프링부트용 Spring Data Jpa 추상화 라이브러리. 스프링부트 버전에 맞춰 자동으로 JPA 관련 라이브러리들의 버전을 관리해준다. - h2: 인메모리 관계형 데이터 베이스. 별도의 설치가 필요없이 프로젝트 의존성만으로 관리할 수 있음. 메모리에서 실행되므로 애플리케이션 재시작때마다 초기화되므로 테스트에 많이 이용됨. 해당 실습에선 JPA 테스트, 로컬환경 구동에서 사용 예정 domain 패키지 생성 해당 경로에 우선 domain 패키지를 생성한다. 해당 패키지는 도메인을 담을 패키지로서 사용된다. 이때 도메인은 myBatis의 dao와 비슷한..
-
7. 스프링부트와 AWS - ORM&JPA 필요성실습/AWS 2021. 4. 28. 05:06
웹 서비스를 개발하기 위해서 데이터 베이스를 다루는 것은 꼭 필요한 일이다. 회원 가입, 게시글 저장 등 이 모든 것이 데이터 베이스와 연관되있다. 기존 자바에서는 myBatis를 이용해서 데이터 베이스를 다뤘다. 하지만 최근에는 스프링부트와 JPA를 이용하는 추세다. JPA의 필요성 기존에는 myBatis와 같은 프레임 워크를 이용해서 데이터 베이스를 다뤘다. 개발자가 직접 쿼리를 입력해서 DB를 제어하는 방식으로 이 방법이 나쁜건 아니다. 사용이 편리하고 직관적이고 배우기가 수월하다. 그러한 점에서 국비 지원 같은 경우 myBatis를 통해 DB를 제어하는 것을 배우게 된다. 하지만 이러한 방식에는 단점이 있었다. 바로 자바의 객체 지향적인 코드와는 맞지 않는다는 것이다. 일반적으로 Java를 배울 ..
-
6. 스프링부트와 AWS - 롬복 활용하기 2실습/AWS 2021. 4. 28. 02:18
테스트가 마무리됐다면 이제 기존에 만든 HelloController를 수정하도록 하자. 이전에 만든 HelloResponseDto를 HelloController에 적용할 예정이다. 1. HelloController에 코드 추가하기 기존 코드를 위와 같이 코드를 추가해준다. @RequestParam: 외부에서 API로 넘긴 파라미터를 가져오는 어노테이션. 외부에서 name이란 이름으로 파라미터를 넘기면 이는 name(string name)에 저장된다. 좀 더 간단히 설명하면 파라미터를 통해 넘어온 자료를 Dto 객체를 생성할 때 저장하게 해주는 코드다. 2. HelloControllerTest 수정하기 이제 위와 같이 controller의 코드를 수정했으므로 이를 테스트할 코드를 추가해보자. import ..
-
5. 스프링부트와 AWS - 롬복 활용하기실습/AWS 2021. 4. 28. 01:08
앞서 4번에서는 롬복을 설치해봤다. 그럼 이번에는 이 롬복을 이용해서 기존에 작성한 HelloController 클래스를 변경해볼 예정이다. 1. DTO 폴더 생성 및 DTO 클래스 생성 우선 롬복을 사용하기 위해서는 DTO 클래스가 필요하다. 기존에 만든 controller 패키지 안에 dto 패키지를 생성해준다. dto 패키지 내에 'HelloResponseDto'라는 이름의 클래스를 생성한다. 2. 어노테이션 입력하기 위처럼 클래스를 생성하고 상단에 '@Getter', '@RequiredArgsConstructor' 어노테이션을 입력한다. 어노테이션 등록시 단어를 조금만 입력해도 인텔리제이가 자동완성 시켜주므로 이를 이용하자. 어노테이션 입력시 위와 같은 화면이 된다. 어노테이션을 입력하고 'nam..
-
4. 스프링부트와 AWS - 롬복 설치하기실습/AWS 2021. 4. 27. 23:51
롬복(lombok)이란? 자바 개발 시 자주 사용하는 코드인 Getter, Setter 등을 어노테이션으로 자동생성해준다. 이를 통해 코드를 덜 쓸 수 있어 수고가 적어지고 그만큼 오류 가능성이 낮아진다. 1. build.gragle에 코드 추가하기 build.gradle 파일을 클릭한 뒤 아래와 같은 코드를 추가해준다. compile('org.projectlombok:lombok')을 입력한다. 코드를 입력한 뒤에 새로고침 버튼을 눌러서 라이브러리를 내려 받는다. 2. 롬복 설치하기 'Ctrl + Shift + A'를 눌러서 "plugins"를 입력하고 엔터를 누른다. Marketplace를 누르고 lombok를 검색해 인스톨을 버튼을 눌러준다. 설치가 완료되면 인텔리제이를 재시작한다. 3. 롬복 설정..