2022.10.26 Spring-6

차유빈·2022년 10월 26일
0

폼 커스텀 태그 사용하기

UserDataBean.java

index.jap

TestController.java

test1.jsp

test2.jsp

결과


RequestScope

index.jap

TestController.java

result1.jsp

result2.jsp

결과

redirect는 새로운 요청이 발생됨


RequestScope 빈 주입

DataBean1.java

DataBean2.java

TestController.java

RootAppContext

result1.jsp

result2.jsp

index.jsp

결과


Properties

index.jsp

test1.jsp

data1.properties

TestController.java

결과


메세지


스프링 유효성 검사

pom.xml에 Bean Validation API 라이브러리 추가

index.jsp

input_data.jsp

TestController.java

결과


form에 입력될 데이터 전송

User.java

TestController.java

input_success.jsp

결과

input_success.jsp로 넘어가기 전 유효성 검사

User.java에 검사할 항목을 추가함

TestController.java
1. 검사 후 에러 발생 시 BindingResult result 객체가 에러를 넘겨 받음
2. 에러가 있을 시 input_data로 다시 돌아감

input_data.jsp에 라이브러리 추가

input_success.jsp

결과


스프링 유효성 검사 2

beans에 상품 product 클래스 추가

TestController.java

index.jsp

input_product.jsp

결과



인터셉터

요청이 들어갈 때 중간에 가로채기

index.jsp

test1.jsp

test2.jsp

TestInterceptor1.java

  • preHandle, postHandle, afterCompletion 3개의 메서드 중 하나만 써도 됨

ServletAppContext.java에 추가

TestController.java

결과
1. test1은 화면이 보여진 후 3가지 콘솔 출력 실행
TestInterceptor1 - preHandle
TestInterceptor1 - postHandle
TestInterceptor1 - afterCompletion
2. test2는 화면에만 출력


패턴 등록

test3.jsp (test4.jsp 동일)

index.jsp

TestController.java

HomeController.java
home 출력되도록 주석 풀기

ServletAppContext.java

결과


예외 처리

예외 발생 시 어떻게 처리할 것인지 Controller에 적어주는 것

index.jsp

TestController.java

Exception => 예외 종류와 상관 없이 동일한 에러 메세지 페이지를 보여줌

error.jsp

결과


SecondController.java
다른 컨트롤러에서 예외 발생 시키기 => 다른 컨트롤러에서는 에러 적용 안됨

모든 예외를 처리할 수 있는 클래스

ServletAppContext.java에 스캔 추가

GlobalExceptionHandler.java

결과
모든 예외에 대해 에러메세지 반환

profile
chacha's 프로그래밍 공부

0개의 댓글