[Spring] 예외 처리와 오류 페이지
·
Spring Framework
기술 스택JDK 17GradleSpring Boot 3.3.5Thymeleaf 1. 서블릿 예외 처리 - 시작스프링이 아닌 순수 서블릿 컨테이너는 두가지 방식으로 예외 처리를 지원한다.Exception (예외)response.sendError (HTTP 상태 코드, 오류 메시지)Exception (예외)1. 자바 직접 실행자바의 메인 메서드를 직접 실행하는 경우  main이라는 이름의 쓰레드가 실행된다. 실행 도중에 예외를 잡지 못하고 처음 실행한 main( ) 메서드를 넘어서 예외가 던져지면, 예외 정보를 남기고 해당 쓰레드는 종료된다. 2. 웹 어플리케이션웹 어플리케이션은 사용자 요청별로 별도의 쓰레드가 할당되고, 서블릿 컨테이너 안에서 실행된다. 어플리케이션에서 예외가 발생했는데, 어디선가 try ..
[JDBC] 스프링과 문제 해결 - 예외 처리, 반복
·
JDBC
기술스택Spring Boot 3.3.5Java 17H2 Database 1. 체크 예외와 인터페이스서비스 계층은 가급적 특정 구현 기술에 의존하지 않고 순수하게 유지하는 것이 좋다. 이렇게 하려면 예외에 대한 의존도 함께 해결해야 한다. 서비스가 처리할 수 없는 SQLException에 대한 의존을 제거하려면 어떻게 해야할까?바로 SQLException 체크 예외를 RuntimeException 언체크 예외로 전환해서 서비스 계층에 던지면 서비스 계층이 해당 예외를 무시할 수 있기 때문에 특정 구현 기술에 의존하는 부분을 제거하고 서비스 계층을 순수하게 유지할 수 있다. 인터페이스 도입이렇게 인터페이스를 도입하면 MemberService는 MemberRepository 인터페이스에만 의존하면 된다. Me..
[Spring] Bean Validation (검증) - 1
·
Spring Framework
해당 예제는 다음과 같은 기술 스택을 사용했습니다.JDK 11Spring BootThymeLeaf 1. Bean Validation이란?Bean Validation은 Java EE 환경에서 표준으로 제공되는 유효성 검증 프레임워크로, JSR-380(Bean Validation 2.0) 표준에 따라 정의된다. 애노테이션 기반으로 도메인 모델의 필드에 유효성 검증 규칙을 선언하여 자동으로 검증을 수행할 수 있게 해준다. Spring Boot는 기본적으로 Hibernate Validator를 통합하여 Bean Validation을 지원한다. Hibernate Validator는 Bean Validation의 레퍼런스 구현체로, 다양한 유효성 검증 기능을 제공한다. Bean Validation은 다양한 유효성 ..
[Spring] 스프링 메시지, 국제화
·
Spring Framework
기술 스택JDK 11.0.2Spring boot 2.4.4ThymeLeaf  메시지란?개요 만약 기획자가 화면에 보이는 문구가 마음에 들지 않는다고 상품명이라는 단어를 모두 상품이름으로 고쳐달라고 하면 여러 화면에 보이는 단어들을 모두 변경해야 한다. 이런 다양한 메시지를 한 곳에서 관리하도록 하는 기능을 메시지 기능이라 한다. 개념 스프링 부트에서 제공하는 메시지 기능은 애플리케이션에서 텍스트 메시지를 별도의 파일로 관리하여 다양한 언어와 상황에 맞춰 텍스트를 쉽게 변경할 수 있게 한다. MessageSource라는 인터페이스를 통해 애플리케이션은 텍스트 메시지를 코드에 하드코딩하지 않고 별도의 메시지 파일에서 로드할 수 있다.  국제화란?개요 및 개념국제화 (i18n) 기능은 애플리케이션을 여러 언어..