728x90 반응형 SpringBoot21 일단 써 spock 통합테스트를 하려는 과정이다. 1.gradle로 실행하는 것과 intellij IDEA(junit) 으로 실행하는게 있다.(sttings - gradle - run test using 에서 둘중에 하나 고르기)하지만 gradle로 테스트하면 edit configuration에 세팅한 VM options 를 못 읽는다.VM options에 jasypt.encryptor.password 를 세팅해놨는데 못읽으니 무용지물이다.DB 접속정보 jasypt로 암호화해놓음.그렇다고 build.gradle에 jasypt.encryptor.password 를 박아넣고 push 할 수는 없지 않은가.. gradle 로 하면 reporting도 해줘서 index.html로 결과를 볼 수 있으니 좋긴 하다만 어쩔.. 2024. 12. 19. spock @LocalServerPort 할당 시점, setup, setupSpec 차이 통합테스트이기 때문에 @SpringBootTest 를 사용하였고 때문에 전체 스프링 컨텍스트가 생성됩니다. 내용 선 요약 ❌그냥 바로 Url = "http://localhost:$port" 로 사용하면 안됩니다.java.lang.NumberFormatException: For input string: "null" 에러 발생위 그림에서 보았든 port는 테스트 컨텍스트가 모두 초기화 된 후에 할당됩니다.하지만 클래스 변수인 baseUrl은 테스트 컨텍스트 초기화 중에 할당되기 때문에 우리가 원하는 "http://localhost:8080" 형태가 아닌 "http://localhost:null" 이 되기때문에 에러가 발생합니다. ⭕그럼 어떻게 해야 하느냐? setup() 메소드를 사용해야합니다.setu.. 2024. 11. 20. swagger ui 에서 json 이쁘게 출력하기 (springfox 2.9.2 -> 3.0.0) 🎈 현재 swagger response 표시 방법, 문제점 (@ApiResponse)🎈 @ApiModelProperty 사용법과 단점🎈 @ApiResponse 를 사용해서 json response 이쁘게 만드는 방법 2가지🎈 springfox 2.9.2 -> 3.0.0 업그레이드🎈 추가 내용 (Springfox 와 springdoc) 현재 springboot 2.5.5, swagger 는 springfox 2.9.2 버전을 사용하고 있습니다. http://localhost:8080/swagger-ui.html 로 swagger ui 에 접속하면 각 api 마다 아래와 같이 response가 보입니다. 🎈 현재 swagger response 표시 방법, 문제점 (@ApiResponse).. 2024. 10. 30. @Transactional 롤백 @Transactional이 적용된 메서드 안에서 unchecked exception (RuntimeException, NullPointerException 등)이 발생하면 해당 트랜잭션은 기본적으로 롤백되고, aborted(중단) 상태로 전환됩니다. 이로 인해 트랜잭션 블록 내의 다른 SQL 명령문이 실행되지 않으며, "current transaction is aborted, commands ignored until end of transaction block"와 같은 오류 메시지가 나타납니다.예를 들어, 키중복 등으로 인해 DataIntegrityViolationException이 발생하여 트랜잭션이 롤백되면, 트랜잭션 블록 내의 후속 SQL 명령은 무시됩니다. checked exception (예.. 2024. 7. 22. [SpringBoot] 필터, 인터셉터 호출 흐름, 적용 방법 필터 - 서블릿이 제공하는 기능인터셉터 - 스프링이 제공하는 기능 웹과 관련된 공통 관심사항을 처리함적용되는 순서와 범위, 사용방법이 다름인터셉터가 더 편리하고 다양한 기능을 제공함 필터 필터 제한HTTP 요청 -> WAS -> 필터 -> 디스패쳐 서블릿 -> 컨트롤러 //로그인 사용자 HTTP 요청 -> WAS -> 필터(적절하지 않은 요청이라 판단, 서블릿 호출X) //비 로그인 사용자 필터 체인HTTP 요청 -> WAS -> 필터1 -> 필터2 -> 필터3 -> 서블릿 -> 컨트롤러필터는 체인으로 구성되는데, 중간에 필터를 자유롭게 추가할 수 있다. 예를 들어서 로그를 남기는 필터를 먼저 적용하 고, 그 다음에 로그인 여부를 체크하는 필터를 만들 수 있다. 필터 인터페이스를 구현하고 등록하면.. 2024. 5. 20. 이전 1 2 3 4 5 다음 728x90 반응형