현재 회사에서 AWS 인증서를 통해서 HTTPS(443)에 개발 서버를 놓고 개발을 진행 중인데, 자체적으로 Tomcat에 인증서가 있는 게 아니라서 Spring boot에 SSL 설정은 빠져있는 상태였습니다. 그러다보니 Swagger에는 주소가 Http로 나와서 Swagger에서 통신이 제대로 되지 않는 일이 발생했습니다. 그래서 Swagger에서 서버를 설정을 해주었는데, 처음에는 설정한 정보로 정보가 뜨긴 하지만 새로고침을 하면 설정한 서버가 뜨지 않고 Swagger에 기본적으로 설정 된 서버 정보가 나오면서 초기화가 되는 문제가 발생했습니다. 이리 저리 구글에도 찾아보고 여러 방법을 적용했는데도 되지 않더군요. 그래서 현재 springdoc-openapi-ui 버전을 1.5.9에서 1.4.8로 낮..
새롭게 옮긴 회사에서 API 설계를 할 시간이 없어서 API 설계 명세 없이 일단 개발을 진행하면서 Swagger로 API 명세 보여주는 것과 테스트를 진행하기로 했습니다. API 통신에 대한 유효성 검증을 위해 Jwt token을 사용하게 되었는데 Jwt token이 필요한 API들과 필요없는 API를 구분하여 보여주고 싶었습니다. 현재 국내 블로그에서는 내용이 정확하게 나와 있는 곳이 없어서 아래와 같이 작성하여 보여드립니다. 아래 소스를 보시면 spring.profiles.active를 변수로 전달하고 있는데 이 변수를 통해서 Open api의 설명에 여기 서버는 어디이고 현재 접속한 곳은 어떤 버전이다를 명기하고 싶었는데 Swagger 오류인지 처음에는 서버에 설명이 제대로 뜨지만 통신이 안되고 ..
저번까진 Rest api 서버를 구축해 보았습니다. Mybatis를 통해 훌룡하게 SQL을 조회하여 임직원 정보를 뿌려 주었습니다. 다만 Console 창을 보면 SQL이 재대로 실행되었는 지 확인을 할 수 없습니다. 이러면 Debugging 할 때 몹시 불편하니 log4j를 통해 SQL을 Console창에 띄우도록 해봅시다. 먼저 application.properties를 엽니다. 그리고 driver-class-name 및 url을 변경해 줍니다. # spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy # spring.datasource.url=jdbc:log4jdbc:oracle:thin:@localhost:1521/**..
저번에는 일단 DB까지 연결해 보았습니다. 그러면 이제 본격적으로 Controller, Service, Mapper까지 생성해서 통신했을 때 실제 데이터를 뿌려주는 것까지 해봅시다. 기본적으로 Spring boot의 base scan 범위를 별도로 지정하지 않았다면 *Application 파일이 있는 팩키지 아래 경로에 있는 파일들만 scan하게 됩니다. 팩키지 경로를 별도로 변경해 버리면 scan을 하지 않으니 *Application 파일이 있는 팩키지 아래로 경로를 만들도록 합시다. 물론 scan 범위를 별도로 지정해주면 경로를 바꿔도 가능합니다. 이런식으로 일단 경로를 만들어주고 차례대로 Controller 및 Service, Mapper를 만들도록 합시다. Controller와 Service는 클..
- Total
- Today
- Yesterday