공부/Java

[Java] jsp와 servlet 차이점과 친절한 설명까지 요약 정리

ByeongJun 2023. 9. 20. 13:33
반응형

JSP (JavaServer Pages)

Java 기반의 웹 애플리케이션 개발을 위한 기술 

 

JSP는 웹 페이지를 동적으로 생성하는데 사용되며, 

HTML과 Java 코드를 혼합하여 웹 애플리케이션의 사용자 인터페이스를 개발하는데 효과적

 

 

 

특징

  • 동적 웹 페이지 생성
       : JSP를 사용하면 동적 웹 페이지를 생성할 수 있다. 
         웹 페이지 내 Java 코드를 포함해 데이터베이스와의 상호작용,
         사용자 입력 처리 및 다양한 비즈니스 로직을 수행할 수 있다.
  • HTML과의 통합
       : JSP 페이지는 HTML 문서 안에 Java 코드를 포함할 수 있기 떄문에 
         웹 디자이너와 개발자가 협력해 사용자 인터페이스를 디자인하고 개발 가능하다.
  • Servlet과의 연동
       : 서블릿은 컨트롤러(Controller) 역할을 하고 JSP는 뷰(view) 역할을 담당한다.
  • 태그 라이브러리
       : JSP는 태그 라이브러리를 사용해 사용자 지정 태그를 정의하고 재사용 가능하다.
         이로인해 코드의 가독성을 높이고 유지보수가 쉬워진다.
  • 쉬운 배포
       : JSP 페이지는 HTML로 변환되어 실행되므로, 웹 애플리케이션을 간단하게 배포할 수 있다.
         또한 대부분의 웹 서버와 호환되므로 다양한 환경에서도 사용 가능하다.

 

 

 

Servlet

(JSP와 마찬가지로) Java 언어로 웹 애플리케이션을 개발하기 위한 기술

 

Servlet은 Java로 작성된 클래스로 웹 서버와 상호 작용할 수 있는 메서드를 제공하며 

웹 서버와 통신하여 동적인 웹 페이지를 생성하고 웹 애플리케이션 기능을 구현하는데 사용된다. 

 

 

 

특징

  • 동적 웹 페이지 생성
       : (JSP와 동일하게) Servlet을 사용하면 동적 웹 페이지를 생성할 수 있다. 
         ex) 사용자가 입력한 데이터를 처리하고 DB와 연동하여 검색, 업데이트
  • HTTP 요청 처리
       : Servlet은 HTTP 요청을 처리하고 클라이언트에서 받은 요청에 따라 적절한 응답을 생성한다.
         GET, POST, PUT, DELETE 등 다양한 HTTP 메서드를 처리할 수 있다.
  • 세션 관리
       : 사용자의 세션을 관리하고 유지할 수 있다.
         이를 통해 로그인 상태를 유지하거나 사용자 정보를 저장할 수 있다.
  • 웹 애플리케이션 로직 구현
       : 비즈니스 로직을 Java로 작성하고, Servlet을 통해 웹 애플리케이션에 통합할 수 있다.

 

Servlet은 Java EE(Enterprise Edition) 스펙의 일부로 제공되며, 

Apache Tomcat, WildFly 등과 같은 웹 애플리케이션 서버에서 실행된다. 

 

 

 

출처 : https://gmlwjd9405.github.io/2018/11/04/servlet-vs-jsp.html

 

 

 

JSP(Java Server Pages)서블릿(Servlet)

 

모두 Java 웹 애플리케이션 개발을 위한 기술이기 떄문에 

JSP와 서블릿을 혼용하여 사용하지만, 

 

프레젠테이션 레이어에서는 JSP를 사용하여 화면을 구성하고 

비즈니스 로직은 서블릿에서 처리하는 것이 일반적이다.

반응형