전체 글(355)
-
[에러] Cannot resolve class or package 'mysql'
[Reason] MySql 과 QueryDSL 을 사용하여 데이터 관련 작업들을 처리하고 있는데 프로젝트를 clean task를 수행하였더니 처음에는 Q객체가 이미 존재하여 생성할 수 없다는 에러가 발생하더니 해당 에러를 해결하고 나서는 위와 같은 mysql을 찾을 수 없다는 에러가 발생하였다. [Solution] (1) (인텔리제이 기준) File -> Invalidate Caches -> 아무것도 선택하지 않은 상태로 Invalidata and Restart 실행 (2) 1번 방법으로 정상적으로 해결되지 않을 경우 오른쪽 Gradle 항목 -> Refresh Gradle Dependencies 항목으로 디펜던시들 새로고침 처리 (3) Mysql 디펜던시를 주석처리하여 Gradle에 반영했다가 다시 주..
2023.11.08 -
[Spring Boot] 로컬 환경 + 배포 서버에 파일 업로드 (trasferTo 사용법)
이미지 파일이나 일반적인 파일, 음악과 같은 파일을 업로드하게 되는 것은 많은 웹 사이트에서 지원해주는 기능이라고 볼 수 있습니다. 카페에 게시글을 올리거나 스크린샷을 올리거나 커뮤니티 사이트에서 파일을 업로드해서 내용을 공유하는 식으로 일상에서 흔히 볼 수 있는 기능입니다. 이 파일 업로드 기능에 대해서 로컬과 배포 서버에서 구현하는 과정에 대해서 정리해보고자 합니다. view 단 jsp, html 이 존재하고 클라이언트가 해당 페이지에서 문의 파일과 함께 문의 작성 요청을 보내 문의 작성을 수행한다는 전제하에 정리해보겠습니다. 1. API 구성 Controller @PostMapping("/contact/inquiry") public RedirectView contactInquiry( Multipar..
2023.10.19 -
[에러] org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 587;
[Reason] org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 587 구글 이메일 기능을 구현하고 실행했떠니 위와같은 메세징 에러가 발생하였다. spring.mail.properties.mail.smtp.ssl.enable=true 이메일 관련 설정값을 확인해보니 ssl 을 허용하기로 되어있었다. 포트 587은 ssl이 아닌 tls 모드로 사용 시 운용하는 포트이기 때문에 잘못된 모드로 실행 허용을 하여 발생된 에러였다. [Solut..
2023.10.19 -
[Spring Boot] Email 기능 구현
Spring으로 이메일로 메일을 전송하는 기능을 구현해보도록 하겠습니다. !! 또한 maven 환경에서 프로젝트를 운영하고 있으며, 일부러 Spring Boot 버전을 낮춰 사용하므로 사용하는 디펜던시들의 버전 또한 낮은 버전을 사용하고 있음을 미리 알려드립니다. 1. Dependency Import [Maven일 경우] javax.mail mail 1.4.7 org.springframework.boot spring-boot-starter-mail 3.1.4 ====================================================================== ====================================================================..
2023.10.16 -
[에러] Swagger - Content-Type 'application/octet-stream' is not supported
[Reason] 간단히 만든 회원가입 api는 json 형식의 Dto 객체 데이터와 이미지를 받는 multipart 형식의 데이터를 요청 변수로 받고 있다. 그리고 Swagger 를 적용하고 실행하여 각각 알맞게 데이터를 넣어주고 try it out 을 실행했을 때 위와 같이 415 : Content-Type 'application/octet-stream' is not supported 에러가 발생하였다. 위의 api에서도 볼 수 있듯이 consumes 속성도 추가해주었고, produces 속성도 추가하여 알맞은 데이터 형식으로 매핑해주었고, 혹시나 해서 각각 파라미터마다 @Parameter 어노테이션을 붙여 content 속성까지 추가하여 한번 더 알맞은 형식의 데이터임을 swagger에게 알려주도록 ..
2023.10.05 -
[이슈] Swagger 각각 다른 데이터 형식의 다중 요청 매개변수 존재 시 json 형식으로 묶음처리 되는 이슈
[Reason] 위의 이미지 처럼 회원가입 api 를 만들고 Swagger를 적용하여 문서화를 적용하였으나 swagger 자체에서 try it out 을 실행할 때 요청되는 매개변수들이 서로 다른 형식의 요청 데이터임에도 불구하고 하나의 Request Body json 형식으로 묶어서 처리되어 원하는 것처럼 두 가지의 데이터로 요청할 수 없었다. [Solution] 알고보니 rest api 요청 메소드 어노테이션인 @PostMapping 부분에 consume 속성, produces 속성을 추가하고 요청 매개변수 부분에 @Parameter 어노테이션을 추가하여 Swagger에서 사용할 파라미터임을 명시해 주어야 했다. consume 속성은 클라이언트 측에서 요청할 때 요청되는 데이터들의 형식을 지정해주는 ..
2023.10.05