client, server, api, query, WAS, Servlet 등을 알아야만 JSP 를 이해할수있다
내 방식대로 해석해서 이해하기까지 꽤 걸렸다. 하나하나 쉽게 정리해보자
비유를 위해 작은 마트와 식당을 예시로 들자
프로그램이 서로 직접 연결되어 있으면 아래 그림의 마트를 예시로 들어 설명가능하다
손님(클라이언트)이 api를 통해 마트주인(서버)에게 과자(데이터)를 요청(Request)한다
--> 마트주인(서버)은 api를 통해 창고(DB)로 과자(데이터)를 달라고 요청한다(query)
--> 창고(DB)에서 요청한대로(query) 과자(데이터)를 api를 통해 서버로 찾아보낸다(응답 Response)
--> 마트주인(서버)이 주문한 과자(데이터)를 손님(클라이언트)에게 api를 통해 전해준다(Response)
api : 프로그램들을 연결하여 "이것"을 사용하면 "저것"이 (실행)되도록 만든 서비스 또는 규칙
query : 데이터베이스에 정보를 요청하는 것
웹을 통해 데이터를 요청하게 될 시 위의 그림과 같은 과정을 거치게 되는데,
이미 완성된 페이지인 정적 페이지(HTML, CSS, JavaScript)와
사용자의 요청에 따라 데이터베이스에서 자료를 가져와서 WAS ( ex) 톰캣 )를 사용하여
프로그래밍 코드(Servlet, JSP)를 실행하여 페이지를 만들도록 하는 동적 페이지 부분으로 나뉘게 된다
Servlet 과 JSP 모두 동적인 페이지를 만들수 있게 하지만 차이가 있다면
Servlet 은 Java 코드 안에 HTML 코드를 넣은 것이고
JSP 는 HTML 코드 안에 Java 코드를 넣은 것이다
Servlet 은 코드 수정 시 새로 컴파일 후 재배포 해야 하는 단점이 있지만
JSP 코드를 수정할 시 컴파일 후 재배포 과정을 WAS 가 대신 해주어서 편리하다
'Java > 이론 및 용어' 카테고리의 다른 글
디폴트 생성자의 super() 의미 (0) | 2022.08.01 |
---|---|
do get 의 기본 완성 문구 (0) | 2022.07.12 |
servlet 의 get / post 인코딩 방법 (0) | 2022.07.05 |
servlet spec 3.0 미만에서 xml의 display-name 의미 (0) | 2022.07.04 |
[JSP] 입출력 시의 문자 인코딩 (0) | 2022.05.17 |
댓글