전체 글 181

[Java] Spring Boot 3 @Valid ExceptionHandler 예외 처리 방법

@Valid를 사용하여 요청값을 검증할 때 검증을 통과하지 못하면 응답값이 너무 많이 나오는 문제가 있습니다.요청 값 유효성 검사를 통과하지 못했을 때 예외 처리하는 방법을 설명드리겠습니다. MethodArgumentNotValidException우선 예외처리를 위해서는 요청값 검증에 실패했을 때 발생하는 예외가 뭔지 알아야 합니다.요청값 유효성 검사를 통과하지 못하면 다음과 같은 로그를 확인할 수 있습니다.다음은 @NotBlank 검사를 통과하지 못했을 때 출력되는 로그입니다.2024-05-26T11:49:31.985+09:00 WARN 20448 --- [nio-8080-exec-1] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springfr..

[Java] Spring Boot 3 @RestControllerAdvice @ExceptionHandler 사용법

스프링에는 예외 처리를 위해 @ExceptionHandler와 @ControllerAdvice, @RestControllerAdvice 어노테이션이 존재합니다.이 어노테이션을 사용하는 이유와 예제를 소개해드리겠습니다. ExceptionHandler를 사용하는 이유스프링 부트에서 REST API를 요청했을 때 에러가 발생하면 일반적으로 다음과 같은 응답값이 반환됩니다. import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class ExceptionHandlerController { @GetMapping..

[Java] Spring Boot 3 Validation @Pattern 정규식 예제

@Pattern 어노테이션은 요청 값이 정규표현식에 맞는 문자열인지 검증하는 어노테이션입니다. 예제 코드숫자, 알파벳, 한글, 이메일, 전화번호, 비밀번호, 시작 문자, 끝 문자, 포함 문자, 제외 문자 정규표현식 예제입니다.import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RestController;import jakarta.validation.Valid;import jakarta.validation.constraints.Pattern;import lombok...

[Java] Spring boot 3 @NotNull @NotEmpty @NotBlank 차이 비교

@NotNull, @NotEmpty, @NotBlank 어노테이션은 Spring에서 유효성 검사할 때 많이 사용하는 어노테이션입니다.세 어노테이션의 차이와 용도에 대해 정리해보았습니다. 준비import java.util.List;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;import jakarta.validation.Valid;import lombok.AllArgsConstructor;import lombok.Getter;@RestControllerpublic class ValidAnnotationController { @GetM..

[Java] Spring Boot 3 @Valid 어노테이션 사용 예제

Spring Boot 3 버전에서 @Valid 어노테이션을 사용해서 객체를 검증하는 방법입니다.ModelAttribute(Param)과 RequestBody 객체 2가지 방식을 예시로 설명하겠습니다.  Valid 사용 전 준비Valid 사용을 위해 라이브러리를 추가합니다.# pom.xml org.springframework.boot spring-boot-starter-validation # build.gradledependencies { implementation 'org.springframework.boot:spring-boot-starter-validation'}spring-boot-starter-validation 라이브러리를 추가합니다.  어노테이션 사용을 위한..

[Mac] brew로 DBeaver Community 설치, MySQL DB 연결 방법

맥북으로 DBeaver Community 프로그램을 설치하는 방법입니다. DBeaver 설치 진행DBeaver 공식 홈페이지에서 설치를 위한 brew 명령어를 확인할 수 있습니다.DBeaver 공식 홈페이지 바로가기dmg 파일을 다운받아서 하셔도 되는데, brew로 설치하는 방법이 있어서 brew로 진행하겠습니다. brew 설치 명령어 실행brew install --cask dbeaver-community 명령어를 실행하면 설치가 진행됩니다.설치가 다 되면 Applications 폴더에 DBeaver.app 앱이 생겼다고 안내해줍니다.  DBeaver 실행설치 완료된 DBeaver 앱을 실행합니다.안내창이 나오는데 그냥 열기를 눌러주면 됩니다. 실행하면 처음에는 샘플 데이터베이스 생성여부 창이 나오는데 ..

[Mac] Sourcetree 다운로드 및 설치, 원격 저장소 연결 방법

맥에서 소스트리를 다운받아서 설치하는 방법을 설명드리겠습니다. 설치 파일 다운로드소스트리 공식 사이트에서 Mac용 소스트리 설치 파일을 다운받습니다.https://www.sourcetreeapp.com/ 다운로드 버튼을 누르면 약관같은거 동의하라는 팝업이 나오는데, 동의하면 다운로드됩니다. 다운로드 경로로 가서 zip 파일의 압축을 풀어줍니다.unzip .zip 압축을 풀면 소스코드 파일이 나옵니다.이 파일을 실행합니다. 설치 파일 실행 애플리케이션 폴더로 이동할지 묻는 창입니다.이동합니다. 소스트리 설치 및 설정을 진행합니다.     전역 사용자 정보 등록사용할 username과 이메일을 등록합니다. 완료를 누르면 모든 설정이 완료됩니다. 원격 저장소 연결원격 저장소의 프로젝트를 받아보겠습니다. URL..

[Mac] Homebrew를 사용해서 MySQL 8 설치

맥북의 Homebrew로 MySQL 8 버전을 설치하는 방법입니다. MySQL 설치 과정brew install mysql 명령어를 실행하면 mysql 설치가 진행됩니다. 설치 확인(버전 확인)mysql이 잘 설치되었는지 확인하는 방법입니다.mysql --versionmysql -V명령어를 실행했을 때 버전이 잘 나오면 설치가 잘 된 상태입니다. MySQL 실행mysql.server start// 종료mysql.server stop시작할 때는 start로 하고, 종료할 때는 stop으로 실행하면 됩니다.     MySQL 보안 설정root 계정, 외부 접속 등 보안과 관련된 설정을 진행하겠습니다.mysql_secure_installation 비밀번호 유효성 검사 설정N으로 설정하면 비밀번호 규칙을 사용하지..

[Mac/Java] Intellij Community 설치 및 실행

맥북(Mac OS)에서 인텔리제이 무료 버전을 설치하는 방법입니다. 설치 파일 다운로드인텔리제이 공식 홈페이지에서 설치 파일을 다운받습니다.https://www.jetbrains.com/ko-kr/idea/download/?section=mac 맨 위에 있는 거는 유료 버전이고 스크롤을 내려보면 무료버전인 community 버전 다운로드 할 수 있는 곳이 있습니다..dmg 파일을 다운받습니다. 설치 파일 실행 dmg 파일이 다운로드 되었으면 다운받은 설치 파일을 실행합니다. IntelliJ IDEA CE 아이콘을 더블 클릭합니다. 경고창이 나오는데, 열기를 클릭합니다.  인텔리제이 약관에 동의하는 단계입니다.동의에 체크하고 계속을 눌러줍니다. 인텔리제이 데이터를 공유할 지 선택하는 단계입니다.공유하고싶다..

[Mac] Homebrew 다운로드 및 설치

Homebrew란 맥OS에서 패키지를 관리해주는 도구입니다. 설치 명령어 실행Apple M3 Pro, Sonoma 14.3 버전에서 진행하였습니다. Homebrew 공식 홈페이지에서는 맥 터미널을 실행해서 아래 명령어를 실행하라고 안내하고 있습니다. 터미널 실행Command + Space를 눌러서 terminal을 검색합니다.터미널을 검색하면 터미널 애플리케이션이 나오면 클릭해서 실행합니다.    명령어 실행공식 사이트에서 알려준 명령어를 실행합니다./bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"  명령어를 실행하면 비밀번호를 입력하라고 나오는데, 비밀번호를 입력하고 설치를 진행합니..

728x90