목록Web (4)
Kim Jinung
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/6kUSm/btsjsfktEKO/ojV1wcNrkAmRCbEnT7sD81/img.png)
https://spring.io/guides/gs/securing-web/ Getting Started | Securing a Web Application Suppose that you want to prevent unauthorized users from viewing the greeting page at /hello. As it is now, if visitors click the link on the home page, they see the greeting with no barriers to stop them. You need to add a barrier that forces the visitor spring.io 간단한 로그인 구현 예제인데 사용만 할 뿐 내부가 어떻게 돌아가는지 이해하기에는 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/djpQ6C/btsa6duklku/gyOXxrXdL7EorcjaNeuFhk/img.png)
스프링 프레임워크가 제공하는 스프링 컨테이너와 서블릿 컨테이너 모두 컨테이너라는 명칭을 사용하기 때문에, 비슷한 일을 하는 것으로 예상할 수 있다. 두 컨테이너는 객체를 관리하는 측면에서 비슷하지만 목적은 다르다. 스프링 컨테이너는 싱글톤 형태로, 의존성 객체의 라이프 사이클을 관리하는 DI 컨테이너다. 반면에 서블릿 컨테이너는 HTTP 요청과 응답을 처리하기 위한 서블릿 인스턴스의 라이프 사이클을 관리하는 컨테이너다. 1. Servlet container 서블릿 컨테이너는 서블릿의 라이프 사이클을 담당한다. 웹 서버가 HTTP 요청을 받았을 때, 적절한 서블릿을 초기화하고 요청을 전달한다. 서블릿 인스턴스가 작업을 마친 뒤에는 서블릿 컨테이너가 서블릿 인스턴스를 파괴하고 자원을 회수한다. 2. DI C..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bX0bOr/btsaPF6QD6j/aoBq67J07VYoFN3K5eqK5K/img.png)
1. Spring MVC 스프링 프레임워크에서 웹 애플리케이션 개발을 위해 제공하는 모듈이다. 기본적으로 MVC 패턴을 따른다. MVC패턴은 웹 애플리케이션에서 관심사에 따라 역할과 책임을 분리하는 것이다. Model은 애플리케이션의 비지니스 로직, View는 사용자 인터페이스, Controller는 모델과 뷰 사이의 상호작용을 관리한다. 2. Spring MVC architecture 스프링 부트를 사용하면 기본 옵션으로 내장 톰캣을 사용한다. 웹 서버가 HTTP 요청을 받는 경우 웹 리스너가 이를 감지하고 서블릿 컨테이너로 넘긴다. 서블릿 컨테이너는 적절한 서블릿을 매핑한다. 스프링 프레임워크를 사용하면 일반적으로 서블릿 컨테이너가 디스패처 서블릿(Dispatcher Servlet)을 호출한다. Di..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dBbrcY/btsaESrMX6M/IxPTHAYyochFjaWikCLVbk/img.gif)
1. Web server와 WAS(Web Application Server) 웹 서버와 WAS는 HTTP 프로토콜을 사용하여 통신하는 클라이언트-서버 아키텍처에서 서버의 역할을 담당한다. 웹 서버는 정적인 컨텐츠를 제공한다. 그리고 WAS는 동적인 컨텐츠를 제공할 수 있다. 정적인 컨텐츠(Static content)는 고정된 형태의 컨텐츠다. 추가적인 가공없이 서버에서 컨텐츠를 그대로 제공한다. 서버에 요청이 들어왔을 때 HTML 파일을 그대로 반환하는 것이 그 예시다. 동적인 컨텐츠(Dynamic content)는 사용자 요청에 따라, 서버는 DB 등에 접근하여 데이터를 가져와서 로직을 실행하고 그 결과를 제공하는 컨텐츠를 의미한다. 사용자가 ID와 Password를 가지고 웹 서버에 요청을 보냈을 때..