본문 바로가기

부스트코스22

쿠키와 세션 웹에서 상태유지 기술 HTTP프로토콜은 상태 유지가 안되는 프로토콜입니다. 웹 브라우저(클라이언트)의 요청에 대한 응답을 하고 나면 해당 클라이언트와의 연결을 지속하지 않기 때문에 이전에 무엇을 했고 지금 무엇을 했는지에 대한 정보를 갖고 있지 않습니다. 이러한 점을 보완하기 위해 상태를 유지할수 있는 Cookie와 Session기술이 등장합니다. 쿠키와 세션의 비교 쿠키 세션 저장 위치 사용자 컴퓨터에 저장. 클라이언트(브라우저) 로컬에 저장되는 키와 값이 들어있는 작은 데이터 파일 서버에 저장. 클라이언트를 구분하기 위해 세션 ID를 부여하며 웹 브라우저가 서버에 접속해서 브라우저를 종료할 때까지 인증상태를 유지 특징 1. 사용자 인증이 유효한 시간을 명시할 수 있으며, 유효 시간이 정해지면 브라우저.. 2019. 9. 4.
아규먼트 리졸버(Argument Resolver) 아규먼트 리졸버(Argument Resolver) 컨트롤러의 메소드의 인자로 사용자가 임의의 값을 전달하는 방법을 제공할때 사용합니다.예를들어, 세션에 저장되어 있는 값 중 특정이름의 값을 메소드 인자로 전달할때 사용합니다. 아규먼트 리졸버 작성방법 1. org.springframework.web.method.support.HandlerMethodArgumentResolver를 구현한 클래스를 작성 2. supportsParameter메소드를 오버라이딩 한 후, 원하는 타입의 인자가 있는지 검사한 후 있을 경우 true가 리턴 3. resolveArgument메소드를 오버라이딩 한 후, 메소드의 인자로 전달할 값을 리턴 아규먼트 리졸버 설정방법 1 )Java Config에 설정 WebMvcConfigur.. 2019. 9. 4.
인터셉터와 Controller 공통 로직 처리 클라이언트로부터 요청이 들어온 후 Filter가 존재한다면 Filter가 수행됩니다. Filter 수행 이후 DispatcherServlet 수행되고, HandlerMapping을 통해서 실제 어떤 Handler가 동작을 해야 되는지 정보를 얻어내고, Handler가 실행됩니다. 이후, 이런 정보들을 DispatcherServler한테 넘기고 ViewResolver를 이용해서 View의 정보를 얻어오고 해당 View를 찾아서 응답하는 일까지 수행하는것이 스프링의 동작 과정입니다. 인터셉터(Interceptor) 그렇다면, 인터셉터(Interceptor)는 언제 수행될까? 인터셉터는 DispatcherServlet에서 Handler로 요청을 보낼 때, Handler에서 DispatcherServlet 으로.. 2019. 9. 4.
Spring Controller 어노테이션과 파라미터 타입 @Controller 컨트롤러 클래스에 @Controller 어노테이션을 작성합니다. 해당 어노테이션이 적용된 클래스는 "Controller"임을 나타나고, bean으로 등록되며 해당 클래스가 Controller로 사용됨을 Spring Framework에 알립니다. @RequestMapping 해당 어노테이션이 선언된 클래스의 모든 메소드가 하나의 요청에 대한 처리를 할경우 사용한다. 예를들어, "/student" 요청에 대해 공통적으로 처리해야될 클래스라는 것을 의미합니다. 또한, 요청 url에 대해 해당 메소드에서 처리해야 되는 경우에도 사용됩니다. 이러한 @RequestMapping에 대한 모든 매핑 정보는 Spring에서 제공하는 HandlerMapping Class가 가지고 있습니다. @Cont.. 2019. 9. 4.