1. Spring M
1-1) Spring M
도메인 객체 또는 DTO 화면에 전달할 또는 화면에서 전달 받은 데이터를 담고 있는 객체
평범한 자바 객체 POJO
1-2) Event
1-3) EventService
2. Spring V
2-1) Spring V
데이터를 보여주는 역할. 다양한 형태로 보여줄 수 있음.
HTMl, JSP, Thymeleaf
스프링 부트는 기본적으로 동적인 뷰를 resources - templates 디렉토리에서 찾음.
2-3) events.html
3. Spring C
3-1) Spring C
사용자 입력을 받아 모델 객체의 데이터를 변경하거나 모델 객체를 뷰에 전달하는 역할
입력값 검증
입력 받은 데이터로 모델 객체 변경
변경된 모델 객체를 뷰에 전달
3-2) EventController
4. Servlet
4-1) Servlet
4-2) Servlet 생명주기
4-2)-1. init()
서블릿 컨테이너가 서블릿 인스턴스의 init() 메소드를 호출하여 초기화한다.
최초 요청을 받았을 때 한 번 초기화하고 나면 그 다음 요청부터 이 과정을 생략함.
4-2)-2. service()
서블릿이 초기화 된 다음부터 클라이언트의 요청을 처리할 수 있다.
각 요청은 별도의 쓰레드로 처리하고 이때 서블릿 인스턴스의 service() 메소드를 호출함.
4-2)-3. destroy()
서블릿 컨테이너 판단에 따라 해당 서블릿을 메모리에서 내려야 할 시점에 destroy()를 호출함.
4-3) Servlet Maven Project
archetype-webapp로 생성
4-4) Servlet 의존성 추가
Provided, 코딩하는 시점에 사용가능 런타임 시점에 사용불가
4-5) Java Source Directory
Java Dierctory 생성 후 Source 설정하기
4-6) HelloServlet
Servlet을 독자적으로 실행할 수 없음.
4-7) Add Configuration
4-7)-1. Tomcat Server-1
4-7)-2. Tomcat Server-2
4-7)-3. Tomcat Server-3
4-7)-4. web.xml
5. Servlet Listener와 Servlet Filter
5-1) Servlet Listener
5-2) Servlet Filter