본문 바로가기

스프링부트5

[커뮤니티 #15] 클린코드 리팩토링 (Admin API) / 도메인 메서드를 사용하는 이유 이제 어느정도 1차 클린코드 리팩토링 작업이 끝이나고 있습니다. 오늘은 Admin API 리팩토링을 진행하였습니다. ​ 이 API에는 유저 관리와, 게시글 관리, 정지 관리를 담당합니다. ​ 기존 리팩토링 전 Service 코드를 확인해보겠습니다. @RequiredArgsConstructor @Service public class AdminService { private final UserRepository userRepository; private final BoardRepository boardRepository; private final UserReportRepository userReportRepository; private final BoardReportRepository boardReportR.. 2022. 12. 26.
[커뮤니티 #13] 기존 프로젝트 리팩토링 계획 및 진행하기 https://blog.naver.com/sosow0212/222854060468 스프링부트 커뮤니티 API 서버 만들기 #12 JUnit5로 Service 단위 테스트 만들어보기 스프링부트 커뮤니티 API 서버 만들기 #12 JUnit5로 Service 단위 테스트 만들어보기 https://github... blog.naver.com #13번 이전 글은 기존 네이버 블로그에 업로드되어 있습니다 :) 오랜만에 열어보는 커뮤니티 프로젝트 올해 7월에 당근마켓 떨어지고 "API 서버 개발을 집중적으로 해야겠다"라고 생각했습니다. 그때 만든 커뮤니티 프로젝트입니다. 단순 게시판 API 서버가 아닌 Redis나 Querydsl 같은 기술적인 것을 적용도 해보고, 직접 해결도 해보고 싶은 마음에 만들었습니다. 한.. 2022. 11. 23.
도커를 이용해서 Redis 사용 및 스프링 프로젝트에 적용하기 오늘은 스프링 프로젝트에 Redis를 설정하고 어떻게 적용했는지에 대해 포스팅하겠습니다. Redis 사용 준비 먼저 Redis 설치는 로컬에 하는 방법과, 도커를 이용하는 방법이 있습니다. 저는 Docker를 이용해서 설치해보도록 하겠습니다. 처음 시작하시는 분들이 있을 수 있기에 기본적인 Dockerfile도 같이 업로드하겠습니다. 혹시 도커가 설치 안 되신 분들은 설치하시고 진행하시면 됩니다. Docker 세팅하기 Dockerfile FROM openjdk:11 ARG JAR_FILE=*.jar COPY ${JAR_FILE} app.jar ENTRYPOINT ["java","-jar","/app.jar"] 저는 Java11 버전으로 프로젝트를 만들었습니다. docker-compose.yml versi.. 2022. 11. 16.
스프링에서 properties 파일을 통해 민감 정보 감추는 방법 개발을 하고 서버로 배포를 하면, 민감한 값을 숨겨야 하는 경우가 생깁니다. 데이터베이스 키 값을 숨긴다거나, jwt 키의 값을 숨기는 경우 등등 여러 가지 경우가 있는데, 이번 포스팅은 이에 대해 다룰 예정입니다. 데이터베이스 값 감추기 먼저 데이터베이스의 값을 감추는 방법에 대해 말씀드리려고 합니다. 기존의 application.yml 파일은 다음과 같습니다. server: port: 8080 spring: datasource: url: jdbc:mysql://localhost:3306/capstone?useSSL=false&useUnicode=true&characterEncoding=utf8&allowPublicKeyRetrieval=true username: root password: root d.. 2022. 11. 7.