springMvc2_validation 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - Validation 4장 Validation V1 errors?.containsKey('itemName') 오류 메시지 V2 Java BindingResult addError FieldError ObjectError bindingResult.addError(new FieldError("item", "itemName", "상품 이름은 필수 입니다.")); bindingResult.addError(new ObjectError("item", "가격 * 수량의 합은 10,000원 이상이어야 합니다. 현재 값 = " + resultPrice)); bindingResult.hasErrors() Thymeleaf #fie..
public boolean equals(Object obj) { return (this == obj); } @Test void test(){ Map map1 = new HashMap(); map1.put("1", 1); map1.put("2", 2); Map map2 = new HashMap(); map2.put("1", 1); map2.put("2", 2); Assertions.assertThat(map1).isEqualTo(map2); } isEqualTo로 HashMap을 비교하면 success가 떨어진다. 왜냐면 isEqualTo는 동등비교이기 때문이다. 그런데 내가 만든 TestObject객체로 isEqualTo비교 시 Exception이 발생하였다 @Getter @AllArgsConstruc..
@Slf4j @Component // 서블릿이 제공하는 에러페이지 만들기 public class WebServerCustomizer implements WebServerFactoryCustomizer { @Override public void customize(ConfigurableWebServerFactory factory) { ErrorPage errorPage404 = new ErrorPage(HttpStatus.NOT_FOUND, "/error-page/404"); ErrorPage errorPage500 = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/error-page/500"); ErrorPage errorPageEx = new ErrorPage(..
springMvc2_Exception 스프링 MVC2편 - 백엔드 웹 개발 활용 기술 예외처리와 오류페이지 예외처리와 오류페이지 아래처럼 프로젝트를 생성하고 시작해보쟈아 1. 서블릿 예외 처리 서블릿은 다음 2가지 방식으로 예외 처리를 지원한다. Exception response.sendError(HTTP 상태코드, 오류메시지) @Slf4j @Controller public class ServletController { @GetMapping("/error-ex") public void errorEx(){ throw new RuntimeException("예외 발생!"); } @GetMapping("/error-404") public void error404(HttpServletResponse respon..
springMvc2_Login 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - (로그인 처리) 쿠키는 브라우저에 담겨, 모든 요청이 있을 때마다 서버도 전달된다. 쿠카는 영속쿠키와 세션쿠키가 있다 영속 쿠키 : 만료 날짜를 입력하면 해당 날짜까지 유지된다. 세션 쿠키 : 만료 날짜를 생략하면 브라우저 종료시 까지만 유지된다. 브라우저 종료시 로그아웃이 되길 기대하므로, 우리에게 필요한 것은 세션 쿠키이다.?? 이상하네 우리는 요청 할 때마다 연장되는거였으니까 세션쿠키가 아니라 영속쿠키를 한거아냐??????? 그렇다면 로그인과 로그아웃 처리를 Cookie를 통해 해보자 LoginController.java // 로그인 Cookie idCookie = new Cookie("memberId", Strin..
1. 개발 셋팅을 한다. - https://tradeb._______.co.kr 로 URL을 사용하겠고 8080 포트로 설정을 하겠다. ------------------ 하지만 브라우저에 http://tradeb.________.co.kr 를 입력해도 연결이 안된다 why? url을 딱 치면 첫번째로 host파일을 찾고 근데 여기에 해당 URL이 있으면 ngnix로 보내준다 두번째로 DNS서버를 찾는다(KT, SK브로드밴드) 127.0.0.1 tradeb.______.co.kr 을 입력해준다. ---------------------- url입력 시 127.0.0.1에 tradeb.______.co.kr URL을 잡아줬다. ngnix의 포트는 80이다. ------------------ 그렇기때문에 브라우..
회원**(Member):** 이름과 임베디드 타입인 주소( Address ), 그리고 주문( orders ) 리스트를 가진다. 주문(Order): 한 번 주문시 여러 상품을 주문할 수 있으므로 주문과 주문상품( OrderItem )은 일대다 관계 다. 주문은 상품을 주문한 회원과 배송 정보, 주문 날짜, 주문 상태( status )를 가지고 있다. 주문 상태는 열 거형을 사용했는데 주문( ORDER ), 취소( CANCEL )을 표현할 수 있다. 주문상품(OrderItem): 주문한 상품 정보와 주문 금액( orderPrice ), 주문 수량( count ) 정보를 가지고 있다. (보통 OrderLine , LineItem 으로 많이 표현한다.) 상품(Item): 이름, 가격, 재고수량( stockQua..
- Total
- Today
- Yesterday
- BeanFactory
- ApplicationContext
- 차이
- container
- Vuex
- 중간연산
- 자바8
- AnnotationConfigApplicationContext
- JPA
- MAC
- nginx
- springboot
- lambda
- 스트림
- elasticsearch
- stream
- java
- webpack
- map
- Vue
- 람다
- ngnix
- vscode
- 최종연산
- install
- 영속성 컨텍스트
- NPM
- mvn
- docker
- Intellij
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |