Spring boot
-
Spring MVC controller 레이어 테스트 결과가 null이 나온다고?Spring boot 2024. 8. 30. 02:40
들어가기 전에Spring FW는 일반적으로 controller - service - repository 계층으로 구성된다. 여기서 controller 레이어만 테스트 하기 위해서 @WebMvcTest 어노테이션을 지원한다. 해당 테스트를 진행하며 겪은 오류와 해결방안을 작성해 본다. org.mockito.Mockito.when 사용mockito 라이브러리에서 제공하는 when() 메서드 파라미터에 호출 할 method를 전달한다. RequestTokenDTO.Request tokenDTO = ConverterJsonUtils .readFileToMapper("request/create-jwt-encrypted-request.json", RequestTokenDTO.Request.class);..
-
can not find symbol과 not acceptableSpring boot 2023. 12. 4. 22:28
들어가기 전에 Spring Boot 를 사용해 API 를 만들던 중 만난 오류를 정리해보려고 한다. case 1. can not find symbol 데이터베이스 통신해서 데이터를 클라이언트까지 전달에 성공하는걸 Swagger API를 통해 확인을 했다. 이제 AWS 호스팅 서버에 배포하기 위해 빌드를 돌리는데 해당 오류를 만나게 되었다. 로컬에서는 잘돌아가는데 왜 때문에 빌드문제가 생기니!!!!!!!!!!!!! 문제 해결을 위해 조사를 시작했고 의존성 옵션들의 범위에 차이가 있다는것을 확인했다. implementaion: 이 의존성은 컴파일과 런타임 시점에 필요한 의존성을 지정한다. testImplementation: 테스트 코드에서만 필요한 의존성을 지정한다. compileOnly: 단어 그대로 컴파..
-
Spring Boot 와 QueryDSL + Gradle 구성 - ②Spring boot 2023. 6. 21. 19:22
들어가기 전에 지난번 'Spring Boot 와 QueryDSL' 포스팅에서는 가볍게 QueryDSL 구성을 알아보았다. QueryDSL 구성에서 핵심은 Q클래스 생성을 어떻게 해주는지라고 생각된다. 이번에 build.gradle.kts 파일에 Q클래스 생성경로를 구성을 진행하다 겪은 삽질 내용을 작성해보려고 한다. 프로젝트 환경 spring boot version : 3.1.0 java version : 17 build.gradle.kts 완성본 plugins { id("java") id("org.springframework.boot") version "3.1.0" id("io.spring.dependency-management") version "1.1.0" id("com.ewerk.gradle.pl..
-
Execution failed for task ':test' 해결방법Spring boot 2023. 6. 19. 17:39
들어가기 전에 QueryDSL 을 사용하기 위해 환경을 구성하던 중 만나게 된 Execution failed for task ':test'. 관련 오류에 관한 기록이다. 콘솔에 찍힌 오류 contextLoads() FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:142 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1770 Caused by: org.hibernate.AnnotationException at CollectionBinder.java:156..
-
Spring Boot 와 QueryDSL + Gradle 구성 - ①Spring boot 2023. 6. 19. 15:47
들어가기 전에 Spring Boot 3.1.0 version 에 QueryDSL 구성을 시도하다 Java EE 와 Jakarta EE 차이로 경험하게 된 내용을 기록하려고 한다. Java EE(Java Platform, Enterprise Edition) 자바 EE는 1999년 썬 마이크로시스템즈가 J2EE(Java 2 Enterprise Edition) 명으로 발표한 분산 애플리케이션 개발 목적의 산업 표준 플랫폼이다. 기업용 애플리케이션을 개발/실행하기 위한 기술과 환경을 제공하며 서블릿(Servlet), JSP, EJB, JDBC, JNDI, JMX, JTA 등의 알려진 기술을 포함하고 있다. 자바EE의 주요 목적은 특정 운영체제와 미들웨어에 종속되지 않고 정보 교환 및 애플리케이션 호환이 가능한 ..
-
spring boot Gradle 에 Querydsl 설정Spring boot 2021. 11. 9. 18:18
what is QueryDSL ? 복잡한 동적 쿼리를 빌드하는데 객체지향적이며 오류가 발생하기 어려운 형태를 제공하는 라이브러리 why use QueryDSL ? 실 사용되는 비즈니스 로직에서는 동적쿼리가 대부분을 차지하는데 JPQL 로 작성하기 복잡한 동적쿼리를 코드 레벨에서 디버깅할 수 있고 복잡도를 낮추게 도와준다 * Hibernate 스펙에서는 JPQL (Java Persistence Query Language) 를 제안한다 1. 쿼리가 길어질수록 가독성이 떨어진다 2. JAVA 가 지향하는 객체지향과는 멀어진다 3. 동적쿼리 작성의 복잡도가 높아진다 4. code level 에서 디버깅 할 수 없다 5. mybatis 보다 단순할 수 있지만 근본적인 동적쿼리 문제 해결이 어렵습니다 - JPQL ..