다양한 메시지를 한 곳에서 관리하도록 하는 기능을 메시지라고 한다. 한발 더 나아가 언어별로 메시지를 관리하는 것을 국제화 라고 한다. 스프링 메시지 소스 사용 application.properties 내에 입력 (생략 가능)
원래 @ModelAttribute의 바인딩 시점에 타입 오류가 발생하면 400에러를 뱉는다.하지만 BindingResult가 있으면 오류가 발생해도 컨트롤러가 호출된다.
Validator 인터페이스를 상속받아 사용검증기를 사용해서 검증로직을 컨트롤러와 분리할 수 있다.
검증 기능을 매번 코드로 작성하는 방식 대신 애노테이션으로 대체하자Bean Validation은 특정한 구현제가 아닌 검증 기술 표준이다.
영속쿠키 : 만료 날짜가 입력되면 해당 날짜까지 유지세션쿠키 : 만료 날짜를 생략하면 브라우저 종료시 까지 유지
필터는 서블릿이 제공하는 기능이다. 주로 공통 관심사 기능을 적용할 때 사용한다.
스프링 인터셉터는 스프링MVC가 제공하는 기술이고 필터보다 더 다양한 기능을 제공한다.인터셉터는 스프링MVC 구조에 특화된 필터 기능을 제공하기 때문에 필터보다 인터셉터를 사용하는게 더 편리하다.
세션의 정보로 member 객체로 만드는 커스텀 ArgumentResolver 를 빈으로 등록해 컨트롤러에서 @Login Member member 를 사용할 수 있게끔 구현
순수 서블릿의 예외 처리 방식 Excpetion response.sendError(SatusCode, errMsg)
application/x-www-form-urlencodedHTML 폼 데이터를 서버로 전송하는 가장 기본적인 방법이다.문자를 전송하는 방식.multipart/form-data파일 업로드를 위해 파일은 문자가 아니라 바이너리 데이터를 전송해야 한다.
스프링에서는 더 간단하게 멀티파트 파일을 업로드 할 수 있게 해준다.@RequestParam MultipartFile file 와 같이 파일을 받아올 수 있고, 파일에 관련된 많은 기능을 제공해준다.