일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- vue
- Spring REST Docs
- Spring Security
- 리액트
- Crawling
- SpringBoot
- MSA
- tasklet
- MFA
- Filter
- gradle
- JavaScript
- T-OTP
- Flyway
- vuejs
- AuthenticatoinProvide
- axios
- REACT
- Spring Batch
- OpenStack
- preventdefault
- SWAGGER
- SpringRESTDocs
- cloud native
- stopPropogation
- cheerio
- Pender
- UsernamePasswordAuthenticationFilter
- Reduxpender
- openapi3
- Today
- Total
목록Flyway (3)
Miracle Morning, LHWN
# 파일명을 정의할 때 역시 Flyway 가 인식할 수 있도록 명명규칙을 따라주어야 하며, 여기선 'V3__bulk_update_books.java' 로 지정하였다. 이때 경로는 src/java 하위에 바로 db/migration 경로를 생성해주었고 그 안에 java 파일을 위치한다. BaseJavaMigration 을 상속받아 migrate 함수를 Override 하여 사용해주면 된다. createStatement 를 통해 쿼리를 생성할 수 있는 객체를 만들고, SELECT 를 통해 가져온 rows 를 하나하나 while 문으로 돌려가며 UPDATE 쿼리를 날려주었다. package db.migration; import org.flywaydb.core.api.migration.BaseJavaMigrat..
# 이번에는 API 형태로 Flyway 를 사용해보고, 데이터의 신뢰성을 위해 실행될 때마다 (1) 초기화 Clean - (2) Migrate 의 순서로 수행할 것이다. 이때 Clean 하는 작업을 따로 Class 로 분리하여 Configuration annotation 을 지정한다. # 먼저 API 형태로 Flyway 를 사용하기 위해 데이터베이스 정보를 설정한다. // FlywayConfig.java package com.springJPAPractice.springJPAPractice.Configs; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; im..
# gradle Project 를 생성해서 Flyway 를 사용해본다. # 우선 프로젝트에 SQL 주소, user 정보 등을 설정하고 ddl-auto 가 어떤 방식으로 반영될지를 설정해준다. // /main/resources/application.properties spring.datasource.url=jdbc:mysql://localhost:3306/db_example spring.datasource.username=sa spring.datasource.password=password spring.jpa.hibernate.ddl-auto=none # 그리고 flyway 가 데이터베이스에 접근할 때 사용하는 정보를 명시해주어야 하는데 여기에서는 REAL 환경과 TEST 환경을 분리하여 작성했다. (RE..