응애개발자
article thumbnail
[JPA] List 조회시 N+1문제 Fetch join으로 성능 개선하기
프로젝트/WMS 2024. 8. 8. 00:08

문제상황ERD구조는 위와 같은 상황에서 유저들의 목록을 가져오는데 부서이름과 직급이 필요했다.데이터베이스에서는 회원 총 21명, 부서 5개, 직책 5개가 존재했다.ResponseDTO그래서 리스트 각각에는 밑과 같은 ResponseDTO정보들을 넣어주었다.@Data@Builderpublic class UserListResponseDTO { private Long id; private String name; private String email; private Role role; private String profileImage; private String departmentName; private String positionName; //DTO메서드로 재사용성을..

article thumbnail
[오류해결] resolved [org.springframework.web.multipart.maxuploadsizeexceededexception: maximum upload size exceeded]
오류해결 2024. 8. 6. 18:00

Error resolved [org.springframework.web.multipart.maxuploadsizeexceededexception: maximum upload size exceeded] 회원가입에서 프로필 사진을 저장하는 로직도중에 위와 같은 문제가 발생하며 이미지는 저장이 안되었다. 에러 뜻을 해석하면 업로드 할 수 있는 최대 용량을 넘긴 파일을 업로드하려 했을때 발생하는 에러였다. 용량을 설정하지 않으면 최대 용량은 1MB로 설정이 된다.  Solution위 문제를 해결하기 위해 application.yml에서 최대 용량을 설정해 주었다. -SpringBoot 2.x 버전 이상부터는 밑과 같이 작성해주시면 됩니다. -Spring Boot 3.x.x 버전(필자가 진행하는 프로젝트)spri..

article thumbnail
[AWS/S3] Spring에서 S3에 데이터 저장하기
프로젝트/WMS 2024. 8. 6. 02:10

프로젝트 진행 시 이미지를 서버에 저장해야 할 경우가 많다. AWS의 S3를 이용하면 이미지를 저장하고 해당 링크를 DB에 저장하여 효율적으로 관리할 수 있다. 이를 통해 서버 용량을 절약하고, 비용 절감 효과를 얻을 수 있다. 그럼 AWS의 S3를 활용하여 이미지를 저장하고 확인해보자.1. S3 버킷 생성하기1.버킷 생성하기AWS > S3 > 버킷 > 버킷만들기 클릭또는 밑의 주소로 접속합니다.https://ap-northeast-2.console.aws.amazon.com/s3/bucket/create?region=ap-northeast-2# 2. 버킷 생성버킷을 생성하기 위해 이름을 만들어 줍니다.버킷은 디렉토리/폴더 개념으로 이해하시면 됩니다. 그리고 버킷의 퍼블릭 엑세스 차단을 해제해줍니다. 3..

article thumbnail
Spirng Security + JWT + OAUTH2 를 활용한 일반로그인, 소셜로그인(Kakao) (2)
프로젝트/WMS 2024. 7. 3. 00:17

이번 시간은 Kakao 로그인이다.🤔 왜 OAUTH2를 진행했나?OAUTH2를 사용하는 또다른 중요한 이유는 회원에 대한 중요한 개인정보(ex. 계정과 계정에 대한 비밀번호, 기타 개인정보)를 내 DB에 저장하지 않음으로써 혹시라도 노출될 사고를 줄일 수 있다는 점때문에 사용하였다. 결론적으로 사용자와 개발자 모두에게 편의성과 보안성을 제공할 수 있기 때문에 진행하게 되었다.  📌 Spring Security 동작 원리모든 책임을 백엔드가 맡음필자는 소셜 로그인을 백엔드로만 진행했다. 보통 백엔드와 프론트엔드를 섞어서 프론트에서 코드를 받거나 토큰을 발급받는 경우가 있는데 카카오와 같은 대형 서비스 개발 포럼 및 보안 규격에서는 책임을 나누어 받는 것을 지양한다. 따라서 모든 책임을 프론트에서 맡거나..