이번에는 두개의 데이터베이스를 사용할때 DataSource를 설정하는 방법을 알아보겠습니다. 하나의 DB에 대한 설정이 필요하신 경우 이글을 읽어보시면 도움을 받으실 수 있습니다. 1. 환경설정 build.gradle.kts // Spring Data JPA 스타터 추가 implementation("org.springframework.boot:spring-boot-starter-data-jpa") // MySQL Connector 추가 runtimeOnly("mysql:mysql-connector-java:8.0.22") 2. DB 프로퍼티 설정 2개 이상의 데이터베이스를 사용할 경우에는 프로퍼티 설정도 각각 설정해주어야 합니다. spring: datasource-Memo: driver-class-nam..
Spring Data JPA를 통해 MySQL DB 연결을 설정하는 방법에 대해 정리하는 글입니다. 1. 환경설정 build.gradle.kts // Spring Data JPA 스타터 추가 implementation("org.springframework.boot:spring-boot-starter-data-jpa") // MySQL Connector 추가 runtimeOnly("mysql:mysql-connector-java:8.0.22") 연결할 DB가 MySQL이 아니라면 연결할 DB에 해당하는 Connector를 추가해주면 됩니다. 2. DB 프로퍼티 설정 application.yml spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver..
개발을 하다 보니 Security 인증 후에 로그인 한 객체의 정보가 필요한 경우가 발생했습니다. SpringBoot에서 Security 인증 후에 로그인 한 객체의 정보를 가져오고 싶다면 어떻게 해야 할까요?? 1. SecurityContextHolder 로 직접 가져오기 인증 후 로그인한 객체의 정보를 가져오기 위해서는 객체의 정보가 어디에 저장되는지를 알아야 한다. 아래 그림을 보면 Security의 객체 정보는 SecurityContextHolder 내부에 들어 있다. 그러면 SecurityContextHolder 구조를 한번 살펴보자. SecurityContextHolder 는 시큐리티가 인증한 내용들을 가지고 있으며, SecurityContext 를 포함하고 있고 SecurityContext를..
Bean Validation은 많은 편리한 기능을 제공해 주지만 그럼에도 추가적인 기능이나 필요한 제약을 직접 정의해서 사용하고 싶을 때가 있습니다. 저는 프로젝트를 진행하다 Enum 타입을 String으로 입력받게 해논 경우가 있었는데 String으로 입력받을 경우 Enum타입으로 선언해 놓은 값 이외에 값도 입력받을 수 있게 되고 이러면 Enum 타입을 쓰는 장점이 사라지게 됩니다. 그래서 어떻게 검증할 수 있을까라는 생각이 들어서 찾아보니 Bean Validation을 직접 정의하는 방법이 있었습니다. 이번에는 Enum 타입 검증 기능을 직접 정의해보겠습니다. (물론, Enum타입을 String타입대신 기존의 Enum타입으로 입력받으면 상관없지만 공부 목적으로 구현해보았습니다..) Validatio..
개발을 할때 기능을 개발하는것 만큼 중요한게 validation 입니다. 그중에서 클라이언트로부터 입력받은 값의 오류로 발생하는 장애가 꽤 많습니다. 입력받은 값이 잘못되면 전혀 예상치 못한 곳에서 에러가 발생하여 원인 파악이 힘든 경우가 많이 발생하게 됩니다. 그래서 클라이언트로부터 입력받은 값을 검증할때 Bean Validation Annotation을 사용합니다. Annotation의 종류와 기능에 대해 알아보겠습니다. Bean Validation 시작하기 환경설정 build.gradle implementation 'org.springframework.boot:spring-boot-starter-validation' Spring Boot Validation Starter를 추가해줍니다. 이것만으로 ..
- Total
- Today
- Yesterday
- BatchStatus
- 클린 아키텍처
- spring data jpa
- autoconfigure
- mockK
- test
- mockito-kotlin
- ExitStatus
- 시나리오 테스트
- IntelliJ
- meta-data
- A레코드
- kotlin
- Spring Batch
- AWS INDUSTRY WEEK
- GSLB
- Collection
- JUnit5
- WrongTypeOfReturnValue
- datasource
- trailing comma
- prinicipal
- java
- assertj
- Spring
- scenario test
- Parameterized
- Stream
- asSequence
- Mockito
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |