JSP(JavaServer Pages)와 Servlet은 모두 Java를 기반으로 하는 웹 애플리케이션 개발을 위한 기술
-역할 및 목적
JSP(Java Server Pages):
JSP는 HTML 내에 Java 코드를 포함하여 동적인 웹 페이지를 생성하는 데 사용
주로 클라이언트가 볼 웹 페이지의 모습을 구성하고, 서버 측 로직을 포함하여 동적인 콘텐츠를 생성하는 데 사용
HTML 내부에 Java 코드를 삽입하여 동적 웹 페이지를 생성, JSP는 Servlet으로 변환되어 실행되며, JSP 파일의 내용이 변경되면 다시 변환 과정을 거친다
<%@ page ... %>
<% taglib .. %> -directive element
<%@ include. %>
<% 자바코드 %> -> scriptlet
<%= %> : 표현식 -> expression element
<%! %>: 필드 및 메서드 선언 ->declaration element
<jsp:xxx - /> -> JSP action tag
twxt -> template data
Servlet:
Servlet은 Java 클래스를 기반으로 웹 애플리케이션 서버에서 동작하는 작은 프로그램
서버 측에서 요청을 처리하고 응답을 생성하는 데 중점
Servlet은 Java 코드 안에 HTML 태그가 삽입되며, .java 확장자를 가진다.
Servlet은 클라이언트 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 역할
-구조
JSP:
JSP는 주로 HTML 내에 Java 코드를 삽입하는 형태로 작성됩니다.
JSP는 Servlet으로 변환되어 실행되며, JSP 파일의 내용이 변경되면 다시 변환 과정을 거친다
Servlet:
Servlet은 Java 클래스로 작성되며, 서블릿 컨테이너에서 실행
Servlet은 Java 코드 안에 HTML 태그가 삽입되며 .java 확장자를 가진다.
유연성:
JSP:
JSP는 주로 비즈니스 로직보다는 클라이언트 인터페이스를 다루는 데 적합, 단순한 동적 콘텐츠 생성 및 표시에 유용
Servlet:
Servlet은 데이터 처리와 비즈니스 로직을 다루는 데 적합. 데이터베이스와의 상호 작용, 외부 API 호출 등의 작업에 적합
배포 및 유지 보수:
JSP:
JSP 파일은 수정 시에 웹 서버를 다시 시작하지 않아도 변경 내용이 즉시 반영
Servlet:
서블릿은 Java 클래스로 컴파일되고, 변경 시에 웹 서버를 재시작해야 변경 내용이 적용
=> JSP는 서블릿을 기반으로 한 스크립트 기술, JSP는 HTML을 코딩하기 어렵고 불편하다는 단점을 보완하기 위해 만들어진 것. JSP는 서블릿을 작성하지 않고도 간편하게 웹 프로그래밍을 구현할 수 있도록 도움
JSP는 사용자에게 결과를 보여주는 프리젠테이션 층을 담당하고,
Servlet은 사용자의 요청을 받아 분석하고 비즈니스 로직과 통신하여 처리한 결과를 다시 사용자에게 응답하는 컨트롤러 층을 담당
'의문점 공부하기 > 📌 Java' 카테고리의 다른 글
📌 세션과 쿠키의 차이는 ???? (0) | 2023.08.10 |
---|---|
📌 jsp를 기본 제공하는 객체는 ??? (0) | 2023.08.09 |
📌 스레드 풀에서 submit()과 execute()의 차이는 ?!?!? (4) | 2023.08.01 |
📌 스레드 풀을 생성할 수 있는 여러가지 방법은 뭐가 있을까?????? (0) | 2023.07.31 |
📌 thread run()과 thread start()의 차이가 뭘까? (0) | 2023.07.28 |