일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- C++
- API
- spring
- 프로그래머스
- 해싱
- SpringDataJPA
- gitignore
- TDD
- 코딩테스트
- test case
- 알고리즘
- baekjoon
- rombok
- DB
- DynamicProgramming
- testcode
- springboot
- Java
- index.html
- 알고리즘 #코딩테스트 #프로그래머스 #C++ #vector #string
- SpringSecurity
- kotlin
- mustache
- JPA autiding
- Gradle
- SpringFramework
- SpringBean
- JPA
- Comparable
- tdo
- Today
- Total
목록Spring (16)
천천히, 한결같이
이동욱 님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스책을 공부하며 정리한 내용입니다. 틀린 정보가 있을 수 있으니 주의하시고 댓글로 남겨주시길 바랍니다. 생성시간/수정시간 보통 엔티티(Entity)에는 해당 데이터의 생성시간과 수정시간을 포함합니다. 언제 만들어졌고 수정되었는지 등에 대한 정보는 차후 유지보수에 있어 굉장히 중요한 정보이기 때문입니다. 하지만 이러한 정보를 계속에서 등록/수정하려면, 코드가 아래처럼 지저분해 지게 됩니다. public void savePosts() { ... posts.setCreateDate(new LocalDate()); postsRepository.save(posts); } 이런 단순 코드가 모든 테이블, 서비스 코드에 포함된다면 코드가 상당히 지저분해집니다...
이동욱 님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스책을 공부하며 정리한 내용입니다. 틀린 정보가 있을 수 있으니 주의하시고 댓글로 남겨주시길 바랍니다. 게시물 수정, 삭제 기능 만들기 PostsApiController package com.hwanld.book.springboot.web; import com.hwanld.book.springboot.service.posts.PostsService; import com.hwanld.book.springboot.web.dto.PostsSaveRequestDto; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; @RequiredArgsCons..
이동욱 님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스책을 공부하며 정리한 내용입니다. 틀린 정보가 있을 수 있으니 주의하시고 댓글로 남겨주시길 바랍니다. API를 만들기 위한 클래스 API를 만들기 위해선 아래 3개의 클래스가 필요합니다. Request 데이터를 받을 DTO API 요청을 받을 Container 트랜잭션, 도메인 기능 간의 순서를 보장하는 Service Service클래스는 오직 트랜젝션, 도메인 간 순서 보장의 역할만 합니다. 게시물 등록 기능 만들기 우선 PostsApiController를 web패키지에, PostsSaveRequestDto를 web.dto패키지에, PostsService를 service.posts패키지에 생성합니다. 각 클래스의 코드는 아래와 같습니다. Pos..
이동욱 님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스책을 공부하며 정리한 내용입니다. 틀린 정보가 있을 수 있으니 주의하시고 댓글로 남겨주시길 바랍니다. Spring Data JPA, H2 database 추가하기 H2 database 를 사용하기 위해, 우선 build.gradle 에 다음과 같이 의존성을 추가합니다 dependencies { compile('org.springframework.boot:spring-boot-starter-web') compile('org.projectlombok:lombok') compile('org.springframework.boot:spring-boot-starter-data-jpa') compile('com.h2database:h2') testCompil..
이동욱 님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스책을 공부하며 정리한 내용입니다. 틀린 정보가 있을 수 있으니 주의하시고 댓글로 남겨주시길 바랍니다. DTO란? Data Transfer Object로, 계층간 데이터 이동을 위한 자바 Beans라고 이해하시면 됩니다. package com.hwanld.book.springboot.web.dto; import lombok.Getter; import lombok.RequiredArgsConstructor; @Getter @RequiredArgsConstructor public class HelloResponseDto { private final String name; private final int amount; } @Getter : 선언된 모든 ..
이동욱 님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스책을 공부하며 정리한 내용입니다. 틀린 정보가 있을 수 있으니 주의하시고 댓글로 남겨주시길 바랍니다. 패키지 생성, 메인 메소드 Java 디렉토리를 마우스 오른쪽 버튼으로 클릭, 패키지를 생성합니다. 보통 패키지명은 웹 사이트 주소의 역순으로 합니다. (예 : com.hwanld.book.springboot) 그리고 패키지 아래에 Application 클래스를 생성합니다. package com.hwanld.book.springboot; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;..

이동욱 님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스책을 공부하며 정리한 내용입니다. 틀린 정보가 있을 수 있으니 주의하시고 댓글로 남겨주시길 바랍니다. TDD란? TDD란 Test Driven Development의 약자로 '테스트 주도 개발'이라고 합니다. 테스트 주도 개발(TDD)는 [그림2]와 같이 테스트 케이스를 먼저 작성한 후 실제 코드를 개발하여 리펙도링하는 절차를 말합니다. 반복 테스트를 이용한 소프트웨어 방법론으로, 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현하는 것을 말합니다. 단위 테스트란? TDD의 첫 번째 단계인 기능 단위의 테스트 코드를 작성하는 것을 의미합니다. TDD와는 다르게 순수하게 테스트 코드를 작성하는 것을 의미합니다..
이동욱 님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스책을 공부하며 정리한 내용입니다. 틀린 정보가 있을 수 있으니 주의하시고 댓글로 남겨주시길 바랍니다. 우선 build.gradle 맨 위에 다음과 같은 코드를 입력합니다. buildscript { ext{ springBootVersion = '2.1.7.RELEASE' } repositories { mavenCentral() jcenter() } dependencies { classpath("org.springframework.boot::spring-boot-gradle-plugin:${springBootVersion}") } } 위 코드는 이 프로젝트의 플러그인 의존성 관리를 위한 설정입니다. ext라는 키워드는 build.gradle에서 사용..