아무거나 일단 배워보기
transaction은 2개 이상의 쿼리를 하나의 커넥션으로 묶어 DB에 전송하고, 이 과정에서 에러가 발생할 경우 자동으로 모든 과정을 원래대로 되돌려 놓는다. 이러한 과정을 구현하기 위해 Transaction은 하나 이상의 쿼리를 처리할 때 동일한 Connectio
하나의 서블릿이나 JSP만으로 비즈니스 로직과 뷰 렌더링까지 모두 처리하게되면안된다변경의 라이프 사이클컨트롤러: HTTP 요청을 받아서 파라미터 검증하고, 비즈니스 로직을 실행한다. 그리고 뷰에 전달할 결과 데이터를 조회해서 모델에 담아준다.모델: 뷰에 출력할 데이터를
FrontController -> DispatcherServlethandlerMappingMap -> HandlerMappingMyHandlerAdapter -> HandlerAdapterModelView -> ModelAndViewviewResolver -> View
fetch =FetchType.LAZY > cascade =CascadeType.All 에 대해서 알아보자 > object references an unsaved transient instance 에러가 떳다 어떻게 해결할건지 뭘 알아야하는지 적어보는 시간이 될
그래서 3가지만 알아둘거다HandlerExceptionResolver.resolveExceptionHandler()에서 어떤 ExceptionResolver를 택하는지 결정한다.다음의 3가지의 ExceptionResolver가 존재함ExceptionHandlerExce
@Modelattribute@RequestParam@ResponseBody@PostMappingHttp message body에 데이터를 직접 담아서 요청하는 방식HttpEntity<>요청 파라미터 vs HTTP 메시지 바디@RequestBodyHTTP 응답 -
요구사항: 검증 로직 추가 타입 검증 가격, 수량에 문자가 들어가면 검증 오류 처리 필드 검증 상품명: 필수, 공백X 가격: 1000원 이상, 1백만원 이하 수량: 최대 9999 특정 필드의 범위를 넘어서는 검증 가격 * 수량의 합은
Bean Validator 삭제해주기 > 스프링 MVC가 어떻게 Bean Validator를 사용할까 > 스프링 부트는 자동으로 글로벌 Validator로 등록한다. 검증 순서 @ModelAttribute 각각의 필드에 타입 변환을 시도한다. 1-1. 성공하면 다음으로 1-2. 실패하면 typeMismatch로 fieldError에 추가됨 (bi...
로그인의 상태를 어떻게 유지할 수 있을까?쿼리 파라미터를 계속 유지하는 것은 어렵고 번거롭다.쿠키를 사용해보자서버에서 로그인에 성공하면 HTTP 응답에 쿠키를 담아서 브라우저에 전달하기그러면 브라우저는 앞으로 해당 쿠키를 지속해서 요청마다 보내준다.모든 요청에 쿠키 정
필터를 적용하게 되면 필터가 호출 된 다음에 서블릿이 호출된다.필터는 체인으로 구성되는데, 중간에 필터를 자유롭게 추가 가능함.필터 인터페이스를 구현하고 등록하면 서블릿 컨테이너가 필터를 싱글톤 객체로 생성하고, 관리한다.init(): 필터 초기화 메서드, 서블릿 컨테
일단 html form 에서 기본 action이 잇으면 현재 url 무시하고 form의 action의 url로 post 요청을 보내서 핸들러에서 @RequestParam을 못받게됨요! https://www.inflearn.com/questions/242762 에
Exceptionresponse.sendError웹애플리케이션웹 애플리케이션은 사용자 요청별로 별도의 쓰레드가 할당되고, 서블릿 컨테이너 안에서 실행된다. 애플리케이션에서 예외가 발생했는데, try-catch로 못잡으면 서블릿 밖으로 까지 예외가 전달된다.톰캣같은 WA