Irisation23 / Irisation23/Sevlet-Spring-Disscussions

[Servlet] - JSP 동작과 처리 과정

Open
#17 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

### Discussed in https://github.com/bunsung92/Sevlet-Spring-Disscussions/discussions/14

Originally posted by **bunsung92** April 27, 2023
# 1. JSP 동작과 처리 과정

- JSP 페이지에 대한 요청을 WAS가 처리하는 방법은 두 방법으로 나뉜다.

1. JSP에 해당하는 서블릿이 존재하지 않을 경우
2. JSP에 해당하는 서블릿이 존재하는 경우

두 과정을 간단하게 알아보자.

![image](https://user-images.githubusercontent.com/53285909/234743750-f723d39f-75d0-46a4-b538-ef934dbe886d.png)

## 1.1 JSP에 해당하는 서블릿이 존재하지 않을 경우

- JSP 페이지로부터 자바 코드를 생성( 변환 (translation) 단계)
- 자바 코드를 컴파일해서 서블릿 클래스를 생성 ( 컴파일 단계 )
- 서블릿에 클라이언트 요청을 전달
- 서블릿이 요청을 처리한 결과를 응답으로 생성
- 응답을 웹 브라우저에 전송

## 1.2 JSP에 해당하는 서블릿이 존재하는 경우

- 서블릿에 클라이언트 요청을 전달
- 서블릿이 요청을 처리한 결과를 응답으로 생성
- 응답을 웹 브라우저에 전송

## 1.3 정리

- JSP를 요청하면 JSP를 직접 실행하는 것이 아니라, JSP를 자바 코드로 변환한 뒤 컴파일해서 생성한 서블릿을 실행하는 것
- 톰캣은 `work폴더`에 JSP를 변환한 자바 소스 코드와 서블릿 클래스를 생성함
- JSP 페이지를 변경하면 이미 서블릿이 생성되어있어도 JSP 페이지로부터 서블릿 클래스를 다시 생성한다.

---

> 출처
> https://scshim.tistory.com/394

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.