백엔드/스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 4

검증2 - Validation

1. Bean Validaion - 소개 Bean Validation 이란 검증 애노테이션과 여러 인터페이스의 모음이다. 2. Bean Validation - 시작 implementation 'org.springframework.boot:spring-boot-starter-validation' 를 build.gradle에 추가해야한다. import lombok.Data; import org.hibernate.validator.constraints.Range; import javax.validation.constraints.Max; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; @Data p..

검증1 - Validation

검증 타입, 필드 등 오류가 발생할 시 수행하는 로직을 뜻한다. 1. 검증 직접 처리 Map errors = new HashMap(); 을 사용하여 어떤 검증에서 오류가 발생했는지 정보를 담는다. 문제점: 만약 문자타입으로 입력이 들어오면 오류가 발생한다. 오류 발생시 입력 내용이 사라짐 2. BindingResult BindingResult 파라미터의 위치는 @ModelAttribute Item item 다음에 와야 한다. 필드에 오류가 발생하면 FieldError를 사용하고 글로벌 오류가 발생하면 ObjectError을 사용한다. FieldError , ObjectError 생성자 소개 objectName : @ModelAttribute 이름 field : 오류가 발생한 field 이름 default..

메시지, 국제화

1. 메시지 만약 변수명을 바꿔 달라는 요청이 온다면 어떻게 해야할까?? 해당하는 변수명을 다 찾아가면서 모두 변경하기에는 어려움이 있다. 그래서 메시지를 사용해야한다. 메시지는 다양한 메시지를 한 곳에서 관리하도록 하는 기능이다. 1.1 스프링 메시지 소스 설정 스프링 부트를 사용하면 스프링 부트가 MessageSource를 자동으로 스프링 빈으로 등록한다. spring.messages.basename=messages 이것을 스프링 빈에 등록하면 메시지 소스가 적용된다. 사용법: messages_en.properties, messages_ko.properties 등등 이렇게 등록하면 자동으로 인식한다. 1.2 스프링 메시지 소스 사용 이런식으로 사용하면 된다. code = 변수명 args = 파라메터 ..

타임리프 - 기본 기능

텍스트 - text, utext 1.1 기본적인 텍스트 출력 기능 //controller에서 model.addAttribute("data", "Hello World"); //으로 데이터를 보낸다 이런식으로 작성하면 된다. 1.2 escape 웹 브라우저에서는 th:utext [[...]] ㅡ> [(...)] 로 바꾸면 된다. 1.3 SpringEL 아래의 설명은 PDF파일을 참고했습니다. Object user.username : user의 username을 프로퍼티 접근 ㅡ> user.getUsername() user['username'] : 위와 같음 ㅡ> user.getUsername() user.getUsername() : user의 getUsername() 을 직접 호출 List users[0]...