본문 바로가기

springboot24

Swagger 적용하기 - SpringBoot3 버전 이전 글에서는 swagger를 사용하기 위해 springfox를 사용했다. 하지만 spring boot 3 부터는 javax.*가 아닌 jakarta.*를 사용한다. 그래서 javax.*를 사용하는 라이브러리들이 정상동작하지 않는 경우가 생겼고 springfox도 제대로 동작하지 않는다. 적용법은 기존 방식보다 굉장히 간단해졌다. 1. build.gradle implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2") 2. application.yml springdoc: api-docs: path: /api-docs swagger-ui: path: /swagger-ui.html packages-to-scan: 3. url 허용 "/a.. 2023. 7. 18.
Swagger 적용하기 - spring fox 실무를 하면서 프론트 작업을 하는 동료들에게 API 문서를 넘겨줘야 할 일이 있었다. 원래는 Spring docs를 사용했었는데 테스트 코드를 하나하나 짜야했고 개발 일정이 길지도 않고 복잡한 코드가 별로 없어서 Swagger를 적용하게 되었다. swagger에 대한 사전 지식이나 샘플 코드 없이 설정하려니 헤매는 일이 좀 있었다. 나는 SpringBoot 2.X 버전에서 사용한 것이고 SpringBoot 3부터는 내가 적용한 swagger 설정 방식과는 다르므로 참고하자. 1. application.yml 설정하기 spring: mvc: pathmatch: matching-strategy: ant_path_matcher SpringBoot 2.6 버전 이후에 spring.mvc.pathmatch.mat.. 2023. 7. 17.
Kotlin으로 웹개발하기 항상 Java로만 개발하다가 Kotlin을 사용하여 프로젝트를 진행한 적이 있다. 이 때 SpringBoot 3버전을 처음 사용해봤는데 설정 방식이 기존 방식과 다르거나 Java와 사용법이 다른 부분들이 있어 몇 가지 정리해 보았다. 코드는 IntelliJ에서 작성된 것임을 참고하자. Querydsl 설정하기 (23.2 기준) 우선 Springboot 버전이 변경되면서 javax가 아닌 jakarta로 변경되었다. build.gradle.kts plugins{ ... kotlin("kapt")version"1.7.10" } dependencies { implementation("com.infobip:infobip-spring-data-jpa-querydsl-boot-starter:8.1.0") kapt(.. 2023. 7. 4.
트랜잭션이란? 실무를 하다보니 꼭 알아야하지만 기억이 안나는 개념들이 몇몇 있었다. 그 중 하나가 트랜잭션에 관한 내용이었다. 그래서 Spring에서 사용되는 트랜잭션에 대한 개념을 공부하여 정리해 보았다. 트랜잭션이란? - 모든 작업들이 성공적으로 완료되어야 작업 묶음의 결과를 적용하고, 어떤 작업에서 오류가 발생했을 때는 이전에 있던 모든 작업들이 성공적이었더라도 없었던 일처럼 완전히 되돌리는 것 - 데이터베이스 관리 시스템 또는 유사한 시스템에서 상호작용의 단위 데이터베이스를 다룰 때 트랜잭션을 적용하면 데이터 추가, 갱신, 삭제 등으로 이루어진 작업을 처리하던 중 오류가 발생했을 때 모든 작업들을 원상태로 되돌릴 수 있다. 즉, 모든 작업들이 성공해야만 최종적으로 데이터베이스에 반영되는 것이다. Spring에서.. 2023. 7. 3.