본문 바로가기

개발/Spring boot

(4)
[Spring boot] JPA 기본 키 생성 전략(AUTO, IDENTITY, SEQUENCE, TABLE, UUID) Index에 대해 공부하다가 JPA의 기본 키 생성 전략들은 어떤 방법으로 생성하는 편리한 어노테이션들인지에 대해 공부하게 되었다. JPA 기본 키 생성 전략 JPA(Java Persistence API)에서는 엔티티의 기본 키를 생성하기 위해 다양한 전략을 제공한다. 다음은 5가지의 엔티티 기본키 생성 전략이다. AUTO, IDENTITY, SEQUENCE, TABLE, UUID 1. @GeneratedValue(strategy=GenerationType.AUTO) 자동으로 기본 키를 생성하며, 데이터베이스 벤더(DBMS를 개발하고 판매하는 회사)마다 다른 전략을 사용한다. 따라서 개발자가 직접 전략을 선택할 필요가 없다. 다음은 데이터베이스 벤더에 따라 사용하는 전략이다. MySQL: AUTO_INC..
[Spring boot] Spring Boot Configuration Annotation Processor not confiugred @ConfigurationProperties 어노테이션을 사용할 때 import는 되었지만 다음과 같은 오류가 발생하였다. Spring Boot Configuration Annotation Processor not confiugred Open documentation을 클릭하면 https://docs.spring.io/spring-boot/docs/2.7.7/reference/html/configuration-metadata.html#appendix.configuration-metadata.annotation-processor 홈페이지로 이동하게 되고 다음과 같은 위치로 이동한다. 여기서 각 빌드 관리에 따른 디펜던시를 복사하여 넣어주면 된다. 이 후 다음과 같은 오류로 바뀔텐데 File - Invali..
[Spring boot] configurationprocessor JSONException 에러 로컬에서 잘 돌아가는데도 불구하고 서버에 올렸을 때 Source -> Build -> Deploy 과정이 전부 성공했음에도 불구하고 접속이 되지않아 로그를 열어 스텍 트레이스를 확인하였다. 확인 결과 java.lang.IllegalStateException: Failed to introspect Class from ClassLoader 에러가 발생하였다. 발생한 에러로는 JSONException을 찾을 수 없다는 에러였다. org.json을 임포트 한게 하니라 스프링프레임워크 컨피규레이션 프로세서에 있는 Json을 import해서 에러를 뱉는 것이었다. 해당 에러에 대한 원인은 다음과 같았다. java.lang.NoClassDefFoundError: org/springframework/boot/confi..
Spring boot - Jasypt를 사용한 프로퍼티 암호화하기 github Repository를 private상태로 두기만 하면 상관이 없지만 가끔씩 public 상태를 두어야 할 때와 Repository에서 CI/CD를 연동해 어플리케이션을 배포해야할 때 중요한 정보들을 Repository에 올려야 하기 때문에 꼭 알아두어야 합니다. 1. Jaspyt란? Jaspyt의 공식문서에는 다음과 같이 설명이 되어 있습니다. "Jasypt is a java library which allows the developer to add basic encryption capabilities to his/her projects with minimum effort, and without the need of having deep knowledge on how cryptography ..