목록개발 (4)
메모장
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cwzlvj/btrp7GcKEid/dbPIO1t2nOjMc6lRMYZYok/img.png)
1. HandlerMethodArgumentResolver 이란? HandlerMethodArgumentResolver은 컨트롤러 메서드에서 특정 조건에 맞는 파라미터가 있을 때 원하는 값을 바인딩해주는 인터페이스입니다. 스프링에서는 Controller에서 @RequestBody 어노테이션을 사용해 Request의 Body 값을 받아올 때, @PathVariable 어노테이션을 사용해 Request 의 Path Parameter 값을 받아올 때 이 HandlerMethodArgumentResolver를 사용해서 값을 받아옵니다. 2. HandlerMethodArgument 사용하기 객체를 Controller 파라미터에 바인딩하기 컨트롤러에 특정한 Person이라는 객체가 파라미터로 존재 시 원하는 값을 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/vRXMH/btrqmqGvK5z/idTryIRmD4Rf6r54gDCArk/img.png)
DB Replication 이란? 데이터베이스 이중화 방식 중 하나로 하나의 Master DB와 N대의 Slave DB로 구성됩니다. Master DB에 데이터의 변경이 감지되면 Master DB의 로그를 기반으로 Slave DB에 복제합니다. Master DB에는 데이터의 변경이 필요한 INSERT, UPDATE, DELETE 등의 쿼리가 필요할때 사용하고, Slave DB에는 Select문이 필요할때 사용합니다. Query의 대부분은 Select이기 때문에 Slave DB를 사용한다면 Read성능 향상 효과를 얻을 수 있습니다. 목표 Master DB와 Slave DB를 나눠서 구성하고 @Transaction의 readOnly속성을 사용하여 true일 시 Slave DB,false일 시 Master ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dyHLDA/btrqbGYfre4/At9Ey17rK4w1G4TEDc0hTk/img.png)
환경에 맞는 Spring Profile 설정하기 스프링 부트로 서버를 개발하다보면 개발환경과 운영 환경에서의 profile을 다르게 설정해야하는 경우가 생깁니다. ( 데이터베이스 설정, 외부 연동 url등) 이러한 경우에 스프링에서 지원하는 Spring Profile을 통해 환경에 따라 다른 profile을 설정해줄 수 있습니다. Profile 작성하기 먼저 스프링 프로필을 작성해야합니다. /src/main/resources/develop/application.properties spring.profile.value: develop /src/main/resources/production/application.properties spring.profile.value: production 이제 스프링에서 @..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bnQoQe/btrp7GjzJGQ/HB0C1RKyKemzd1KaMYsA60/img.png)
Spring REST Docs Spring REST Docs는 RESTful 서비스를 문서화 할 수 있게 도와주는 도구입니다. 기본적으로 Asciidoc을 사용하며 작성된 테스트 코드에 의해 html파일을 생성해줍니다. Swagger같은 도구로 생성하는 문서가 아닌 Test로 자동 생성 된 스니펫을 사용해 자신이 원하는 내용을 추가해 사용 할 수 있습니다. 사용된 모든 코드는 GITHUB 에 있습니다. 메이븐 의존성 추가 pom.xml 의 dependencies 에 추가합니다. org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.springframework.rest..