Spring 4

Unable to load class 'javax.persistence.Entity'.

QueryDsl을 사용하려고 보니 javax에서 persistence 를 찾고 있었다. Spring 6부터는 JDK 17과 함께 jakarta ee를 채택했기 때문에 스프링부트를 통해서 jpa를 사용하려고 하고 있었다면 javax가 없어서 당연히 나타나는 에러라고 생각이 들었다. 인터넷에서 검색해보니 classifier를 gradle에서 명시하는 방법이 있어서 jakarta를 명시해서 문제를 해결했다. 이전 설정 implementation "com.querydsl:querydsl-jpa:${queryDslVersion}" annotationProcessor "com.querydsl:querydsl-apt:${queryDslVersion}" 수정 이후 설정 implementation "com.queryds..

Web/Spring 2023.02.05

스프링에서 싱글톤으로 관리하는 빈의 생성주기

스프링 빈 생성주기에 대해서 배웠다. 정확히는 스프링에서 싱글톤으로 관리하는 빈에 대한 생성주기였다. 스프링 컨테이너 생성 스프링 컨테이너의 생성은 말 그대로 Application Context(이하 스프링 컨테이너)의 생성이다. 빈 객체 등록 스프링 컨테이너가 생성되면 빈 객체 등록이 이뤄진다. 이때, 빈이 생성자 주입을 사용하도록 되어있다면, 필요한 의존관계가 빈 객체등록 시점에서 이뤄진다. 의존관계 주입 만약 모든 의존관계가 다 생성자 등록이라면 빈 객체등록이 끝나는 시점에 의존관계 주입도 이미 끝나있을 것이다. 이 의존관계 주입단계에서는 수정자 주입이나, 필드주입을 받는 빈이 주입을 받는다. 초기화 콜백 위 단계에서 의존관계가 주입된 빈들은 초기화 콜백이 수행된다. 초기화 콜백은 Initializ..

Web/Spring 2023.01.26