일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- programmers
- 코테
- 자료구조
- ModelAttribute
- 코딩테스트
- 브루트 포스
- 스프링MVC
- Bean Validation
- 정처기
- 쿼리dsl
- 면접
- 프로그래머스
- 알고리즘
- Java
- JPA
- 객체지향프로그래밍
- 백준
- 운영체제
- 네트워크
- 반복문
- 자바의 정석
- db
- 검증
- OS
- 스파르타코딩
- 웹개발
- 메서드
- 자바
- 스프링
- 스프링 MVC
- Today
- Total
목록스프링 (8)
개발일지
목차 스프링이 제공하는 검증 오류 처리 방법을 알아볼텐데, 여기서 핵심은 ⭐BindingResult (BindingResult bindingResult 파라미터의 위치는 @ModelAttribute Item item 다음에 와야 함) 스프링이 제공하는 검증 오류 처리 방법 - BindingResult1 BindingResult 스프링이 제공하는 검증 오류를 보관하는 객체 (검증 오류가 발생하면 여기에 보관) BindingResult는 검증할 대상 바로 다음에 와야함 ex) @ModelAttribute Item item 바로 다음에 BindingResult가 오야함 BindingResult는 Model에 자동으로 포함됨 BindingResult에 검증 오류를 적용하는 방법 @ModelAttribute의 객..
목차 웹 서비스는 폼 입력시 오류가 발생하면, 고객이 입력한 데이터를 유지한 상태로 어떤 오류가 발생했는지 알려주어야 함 ⭐컨트롤러의 중요한 역할 중 하나는 HTTP 요청이 정상인지 검증하는 것 검증 직접 처리 - 개발 @PostMapping("/add") public String addItem(@ModelAttribute Item item, RedirectAttributes redirectAttributes, Model model) { //검증 오류 결과를 보관 Map errors = new HashMap(); // 검증 로직 if (!StringUtils.hasText(item.getItemName())){ // ItemName에 글자가 없으면, errors.put("itemName", "상품 이름은..
목차 상품 등록 처리 - @ModelAttribute 상품 등록폼에서 등록된 전달된 데이터로 실제 상품을 등록 처리하는 과정 상품 등록폼은 메시지 바디에 쿼리 파라미터 형시으로 전달하기에 @RequestParam 사용 @RequestParam @PostMapping("/add") public String addItemV1(@RequestParam String itemName, @RequestParam int price, @RequestParam Integer quantity, Model model) { Item item = new Item(); item.setItemName(itemName); item.setPrice(price); item.setQuantity(quantity); itemReposito..
목차 스프링 Packaging 설정 War가 아닌 Jar를 선택 → JSP를 사용하지 않기 때문에 Jar를 사용하는 것이 좋음 Jar를 사용하면 항상 내장 서버(톰캣 등)을 사용하고, webapp 경로도 사용하지 않음 내장 서버 사용에 최적화되어 있음 (최근에는 주로 이 방식을 사용) War를 사용하면 내장 서버도 사용 가능하지만, 주로 외부 서버에 배포하는 목적으로 사용 로깅 간단히 알아보기 운영 시스템에서는 System.out.println() 같은 시스템 콘솔을 사용해서 필요한 정보를 출력하지 않고, 별도의 로깅 라이브러리를 사용해서 로그를 출력 스프링 부트 라이브러리를 사용하면 스프링 부트 로깅 라이브러리 (spring-boot-starter-logging)이 함께 포함 스프링 부트 로깅 라이브러..
목차 1. 실용적인 방식의 코드 변화 (1) 변화 전 package hello.servlet.web.springmvc.v2; import hello.servlet.domain.member.Member; import hello.servlet.domain.member.MemberRepository; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet..