Issue14 [Spring] IntelliJ에서 환경변수 값을 수정해도 application.yml 파일의 placeholder(${})에 이전 값이 매핑되는 문제 1. 현상프로젝트에서 DB의 비밀번호와 같은 secret 값은 application.yml 파일에 기재하면 안되기 때문에 환경 변수에 넣어 관리하고 있었습니다. 실제 application.yml 파일과 환경 변수 세팅은 아래와 같습니다. 만약 환경 변수의 값을 바꾸고 spring 어플리케이션을 재시작하면 값이 정상적으로 파싱될 줄 알았는데, 지속적으로 수정하기 전 값을 물고 있었습니다. 2. 원인인텔리제이 내부적으로 application.yml의 파일의 Placeholder가 치환되면 해당 값을 캐시하고 사용하는 것으로 확인되었습니다. 3. 해결Intellij에 저장되어 있는 캐시를 무력화시켜주시면 됩니다.File -> Invalidate Caches..를 누르고 캐시를 무력화시켜주시면 Intellij.. 2025. 8. 16. [Github Action] tj-actions/changed-files 보안 취약점 발견으로 인한 사용 중지 권고 이번에 Github Action과 Code Deploy를 활용해서 CI/CD 라인을 구축하고 있었습니다. 나는 Docker 이미지를 사용해서 EC2에 올릴 생각이었습니다. 따라서 의존성과 그 외 Default 설정을 담당하는 Base Image와 실제 소스 코드가 담긴 App Image 2개를 만들려고 했습니다. 그리고 Github Action의 CI/CD 파일을 하나로 구축하기 위해, build.gradle 파일이 변경되었을 때만 Base Docker image를 빌드 및 배포하고, 그 외에는 해당 step은 skip하고 app만 배포하도록 설정하려고 하였습니다. 그리고 쉽게 PR의 달라진 파일을 비교할 수 있는 Action으로 "tj-actions/changed-files"를 찾았습니다. 이 Acti.. 2025. 7. 18. [Spring][MyBatis] 이상한 클래스가 Mapper class가 scan되는 문제 개선 1. 현상멀티 모듈 프로젝트를 진행하면서, 각 모듈에 DB 설정빈을 추가하니 중복 빈 등록 오류가 발생했습니다.그래서 common 모듈로 공통화를 시키고, DB를 활용하는 모듈에서 common 모듈을 implementation에 사용하는 방식으로 수정하였습니다.DB 설정 코드를 아래와 같습니다.그렇게 적용하였더니 아래와 같은 "Invalid bound statement (not found)"라는 mybatis 오류가 발생하였습니다. 2. 원인여기서 의문인 점은 LoginService는 @Mapper 클래스를 붙이지 않은 interface입니다.그리고 실제 scan된 Mapper 클래스를 확인해보니 LoginService가 포함되어 있었습니다. 따라서 공식 문서를 확인해보니 아래와 같이 "base-pack.. 2025. 7. 18. [Spring][MyBatis] Multi-Module 프로젝트에서 @MybatisTest 테스트 실행 시 중복 fragment 등록 문제 (XML fragments parsed from previous mappers already contains key) 1. 현상멀티 모듈 프로젝트를 진행하면서, 공통 모듈에 DB 설정코드(빈)을 작성하고 그 외 DB를 활용하는 모듈에서 common 모듈을 implementation에 사용하는 방식으로 개발중이었습니다.(이전 게시글 참고 -> https://happiestlife.tistory.com/23 ) [Spring][MyBatis] 이상한 클래스가 Mapper class가 scan되는 문제 개선1. 현상멀티 모듈 프로젝트를 진행하면서, 각 모듈에 DB 설정빈을 추가하니 중복 빈 등록 오류가 발생했다.그래서 common 모듈로 공통화를 시키고, DB를 활용하는 모듈에서 common 모듈을 implementationhappiestlife.tistory.com DB를 사용하는 각 모듈에서 자신의 도메인에 맞는 .xm.. 2025. 7. 18. 이전 1 2 3 4 다음