JSP(Java Server Page)
동적 페이지를 생성하기 위한 서버 측 스크립터 언어이다.
Servlet
웹 브라우저가 정보를 요청할 경우 자바로 응답할 수 없어서 서블릿을 이용했다. 그러나 자세한 이유는 모르지만 사용이 불편한 관계로 생겨난게 JSP이다.
이 둘은 하는 일은 동일하지만 JSP는 HTML 내부에 JAVA 소스코드가 들어가므로 HTML 작성이 간편하다는 장점이 있고
서블릿은 자바코드 내에 HTML이 있어서 읽고 쓰기가 불편해서 작업의 효율성이 떨어진다고 한다.
이때 알아야 할 점은 JSP로 작성된 프로그램은 서버로 요청 시 Servlet파일로 변환되어 추출하고 HTML을 변환한다.
[과정]
1. client가 hello.jsp를 요청했다.
2. JSP 컨테이너가 JSP파일을 읽는다.
3. JSP 컨테이너가 변환 작업을 통해 Servlet(.java)파일로 생성한다.
4. java파일은 다시 .class파일로 컴파일된다.
5. 실행을 통해 HTML파일을 생성하여 JSP컨테이너에게 전달한다.
6. JSP는 HTTP프로토콜을 통해 HTML 페이지를 클라이언트에게 전달한다.
참고블로그)
https://javacpro.tistory.com/43
앞서 정리한 WAS의 사용은 어디서?
1. 클라이언트가 서버에 정보를 요청한다.
2. 웹 서버는 클라이언트가 요청한 파일을 찾는다. 만약 html,xml,json과 같은 파일들이라면 자체적으로 처리가 가능하지만, jsp/php/asp파일의 경우 자체적으로 처리가 불가능하기 때문에 WAS의 도움을 받는다. 이 WAS를 통해 HTML로 변경한다.
3. 사용자의 요청한 파일 형태가 .jsp라면 서버는 java파일을 바로 번역할 수 없기 때문에 톰캣(WAS)의 도움을 받는다.
4.HTML파일을 생성하여 출력하고 그 파일을 브라우저에서 읽어서 화면에 출력한다.
참고블로그)
https://codingwone.tistory.com/39
'끄적끄적' 카테고리의 다른 글
react + express + mongoDB (0) | 2023.07.03 |
---|---|
git pull --rebase (0) | 2023.06.14 |
Web Server, WAS(Web Application Server) (0) | 2023.05.25 |
정적언어 & 동적언어 (0) | 2023.05.10 |
Redux의 상태관리의 주요 개념, 상태관리 비교 (0) | 2023.04.25 |