분류 전체보기 188

[Java] Spring Boot 3 JPA insert 데이터 등록 사용법 및 예제

Spring Boot 3 버전에서 spring-data-jpa를 사용하여 테이블에 데이터를 넣는 방법에 대해 설명드리겠습니다. 테이블, Repository 준비insert 기능을 실습할 엔티티와 테이블을 준비합니다.import jakarta.persistence.Column;import jakarta.persistence.Entity;import jakarta.persistence.GeneratedValue;import jakarta.persistence.GenerationType;import jakarta.persistence.Id;import lombok.AllArgsConstructor;import lombok.Getter;import lombok.NoArgsConstructor;@Entity@Ge..

[Java] Comparable compareto 오버라이딩 사용법

Comparable이란?자바의 Comparable 인터페이스는 객체를 정렬 가능한 객체로 만들어주는 인터페이스입니다.이를 통해 특정 객체들이 자연 순서를 정의하고 이를 기반으로 정렬될 수 있게 합니다.Comparable 인터페이스를 구현하는 클래스는 compareTo 메소드를 오버라이드하여 그 객체의 순서를 지정합니다. Comparable 인터페이스 사용법정렬하고자 하는 객체에 Comparable 인터페이스를 구현하면 됩니다.public class Person implements Comparable { private String name; private Integer birthYear; public Person(String name, Integer birthYear) { ..

[Java] 정규식으로 특수 문자 포함 여부 체크 및 제거하는 방법

자바로 정규식을 사용해서 문자열에 특수문자가 포함되어있는지 여부와 정규식을 사용하여 문자열에 포함된 특수문자를 제거하는 방법을 설명드리겠습니다. 정규식 특수문자 포함 여부 체크 방법특수문자가 정해져 있는 경우!@#$%^&*같은 특수문자가 포함되어있는지 여부를 체크하려면 대괄호([]) 속에 체크하고자 하는 특수문자를 넣으면 됩니다.그리고 Pattern 클래스와 Matcher 클래스를 사용해서 문자열이 지정한 정규식과 일치하는지 여부를 확인할 수 있습니다. 문자열에 특정 특수문자(!@#$%^&*)가 포함되어 있는지 여부를 체크하는 코드입니다.import java.util.regex.Matcher;import java.util.regex.Pattern;...String str = "특수문자가 포함되어 있는 문..

[Java] 문자열에 공백이나 0을 자리수만큼 채우는 방법

문자열을 다룰 때 일정 자리수를 확보해야 하거나 특정 문자를 자리수만큼 채워야할 때가 있습니다.이럴 때 사용하기 좋은 메소드를 소개해드리겠습니다. 왼쪽에 채우기String.format 메소드 사용String str = "문자열";// 왼쪽에 공백 채우기String spaceFillStr = String.format("%10s", str);System.out.println("spaceFillStr = " + spaceFillStr);// 왼쪽에 0 채우기String zeroFillStr = String.format("%10s", str).replace(" ", "0");System.out.println("zeroFillStr = " + zeroFillStr);String.format 메소드를 사용하여 1..

[MySQL] RENAME TABLE 테이블 이름 변경

RENAME이란?RENAME 명령어는 MySQL에서 테이블의 이름을 변경하는 데 사용되는 명령어입니다.이 명령어를 사용하면 테이블 이름을 손쉽게 바꿀 수 있으며, 여러 테이블의 이름을 한 번에 변경하거나, 테이블을 다른 데이터베이스로 이동할 수도 있습니다. MySQL RENAME TABLE 명령어 공식문서 바로가기 MySQL :: MySQL 8.4 Reference Manual :: 15.1.36 RENAME TABLE Statement15.1.36 RENAME TABLE Statement RENAME TABLE tbl_name TO new_tbl_name [, tbl_name2 TO new_tbl_name2] ... RENAME TABLE renames one or more tables. You mus..

[MySQL] DROP TABLE, DROP TABLE IF EXISTS 사용법

MySQL에서 테이블을 제거하는 방법을 설명드리겠습니다. 기본 구조DROP TABLE 문은 다음과 같은 구조를 가지고 있습니다.DROP TABLE 삭제하고자 하는 테이블명을 입력하면 됩니다.  테이블 여러개를 한번에 삭제하고싶으면 다음과 같이 사용하면 됩니다.DROP TABLE , ... 주의사항⚠️DROP 명령어는 되돌릴 수 없습니다.데이터를 삭제하는 DELETE 명령어는 되돌릴 수 있지만, DROP 명령어는 명령어를 실행하기 전으로 되돌아갈 수 없습니다.     DROP TABLE IF EXISTS 사용법명령어를 실행했을 때 테이블 명이 데이터베이스에 존재한다면 별다른 오류나 경고 없이 명령어가 실행됩니다.하지만, 테이블이 데이터베이스에 없는 경우에는 에러가 발생합니다. IF EXIST 절을 추가하면..

[Java] Spring Boot 3 @DateTimeFormat 날짜 유효성 검사 사용법

@DateTimeFormat 어노테이션을 사용하면 입력 형식을 지정해서 입력값을 날짜나 시간 객체로 변환받을 수 있습니다.예를 들어, 입력 형식을 "yyyy-MM-dd"로 지정하면 입력값이 형식에 맞는지 검증한 후 날짜 객체로 변환합니다. 사용 방법@DateTimeFormat 어노테이션을 사용하기 위한 컨트롤러를 생성합니다.import java.time.LocalDate;import org.springframework.format.annotation.DateTimeFormat;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;import ja..

[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...

728x90