보통 yml파일에 DB접속정보, JPA속성등을 설정하죠 로컬에서 스프링부트를 돌릴때 매번 주석을 걸고, 로컬환경정보를 넣어 줄 수는 없잖습니까? 개발환경, 테스트환경, 운영환경에 맞게 인텔리제이에서 yml을 스위칭 할 수 있는 기능을 간단하게 써보도록 합니다 1. yml파일 나누기 아래처럼 3가지로 나눠봤습니다 application.yml application-local.yml application-test.yml 각 파일에는 환경마다 다른 속성들이 들어가있습니다 저는 데이터베이스 접속정보가 다르게 넣어봤습니다 local 파일 -> oracle test 파일 -> h2 2. Edit Configuration 3. Active profiles에 사용할 yml파일명 써주기 application-ㅎㅇㅎㅇ.ym..
yml나 properties에 데이터베이스 접속정보, JWT 토큰 비밀번호를 기입 해놓을 것 이다 로컬에서는 상관없겠지만 github에 올려서 사용 시에 유출되면 악의적으로 사용이 가능해진다. 저런 취약한 정보들만 찾아다니는 봇도 있다. 이것을 jasypt라는 것으로 암호화하여 방지해보도록하자 전체흐름은 아래와 같다 key라는 녀석을 이용해서 암호화를 진행한다. -> 인텔리제이 VM options에 key를 추가하고 사용하면 된다. -> 부연설명을 하자면 1. key값에 자신이 정한 key값을 넣고, 오라클 비밀번호를 str에 넣는다 2. 암호화된 문자열을 긁어서 넣어준다 -> yml파일 -> password: ENC(암호화된비밀번호) 3. ENC() 로 감싸면 jasypt가 자동으로 매핑하여 복호화한다..
토큰 재발급부터 해보자 발급과 비슷하다. 1. 토큰 재발급 2. 적용 적용하기전에 잘 동작하나 확인해볼까? git pull을 해보자 바로 입구 cut ㅎㅎ 얌전히 토큰을 교체해보자 추가할때 구조는 아래와 같다 #원격지 제거 git remote remove origin #원격지 추가 git remote add origin https://발급받은토큰@github.com/본인깃헙아이디/레포지토리명.git 끝
최근에 글을 쓰면서 SQL 책을 다시봤는데 커버링 인덱스 관련내용이 눈에 띄었다 실무에서 자주쓰이면서 이해하기에 딱 좋은 심플한 예제를 구했다 블로그에 정리해보려고 한다 ✍ 우선 이전글과 테이블 구조가 똑같지만 써보도록 하겠슴다 0. 테이블 및 인덱스 정보 사원 테이블 사원번호 생년월일 이름 성 성별 입사일자 int date varchar varchar enum('M', 'F') date PK 사원번호 I_입사일자 입사일자 I_성별_성 성별 + 성 1. 문제의 예제 쿼리와 실행계획 Select 사원번호 From 사원 Where 입사일자 Like '1993%' And 사원번호 > 100000; -- 실행결과 -- 사원번호 100030 100039 ... 100207 100214 100216 1993년생이고..