1. Servlet
- Servlet
- 웹에서 돌아가는 자바. 클라이언트의 요청을 동적으로 처리해준다.
- 클라이언트의 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 Servlet 클래스의 구현 규칙을 지킨 자바 프로그램.
- 자바 코드 안에 HTML 을 포함한다.
- Servlet Container : 웹 서버 + WAS. WAS의 역할을 중점적으로 관리해준다. 서블릿을 관리해주는 누군가가 필요하다. 이게 서블릿 컨테이너이다. 톰캣이 대표적인 Servlet Container 이다.
- 호출할 servlet 이 무엇이고 해당 servlet이 어떤 url에 맵핑되는지를 web.xml 방식과 어노테이션 방식으로 구분할 수 있다. 서블릿 3.0 버전 이후로 web.xml 에서의 서블릿 설정을 자바 소스상에서 대체 할 수 있는 어노테이션이 추가되었다.
2. JSP
2.1. JSP 처리 과정
- 클라이언트로부터 request를 받는다.
- 최초 요청이라면 JSP가 서블릿으로 변환된다. JSP가 java 코드로 변환되는것이다. 최초 요청이 아니라면 service()를 호출한다.
- 서블릿 클래스를 컴파일하여 Class를 생성하고, 생성된 Servlet Class를 메모리에 적재한다.
- init() 메소드를 실행한다
- service() 메소드를 생성한다. service() 메소드는 클라이언트의 요청이 있을때마다 실행된다. service()를 통해 doGet() doPost()가 실행된다
- doGet() , doPost() 메소드가 동적으로 작업을 처리하고 HttpServletResponse 객체에 응답을 보낸다.
'Web' 카테고리의 다른 글
JPA - column 'column_name' cannot be null 에러 해결하기 (0) | 2021.07.27 |
---|---|
자바스크립트 - XML Parsing (공공데이터 파싱 예제) (0) | 2021.03.10 |