Servlet/JSP

Yung·2022년 9월 20일
0

Java223bitcamp

목록 보기
3/26

Servlet/JSP 기술 - 웹 애플리케이션 제작 자바 표준 기술

  1. Java EE(Enterprise Edition) - 기업용 Application 제작에 필요한 기술
  • Servlet/JSP <- 웹 애플리케이션 제작 기술
    - Spring WebMVC Framework로 대체

  • EJB(Enterprise Java Bean) <- 분산 컴포넌트 제작 기술
    - EJB 좀더 사용하기 편하기위해 만든게 Pure Java 기술로 객체 관리 : Spring Framework

  • Web Service <- WSDL(Web Services Desription Language), XML, SOAP등 웹서비스 구현 기술
    - RESTful 기술로 대체 : XML -> JSON, Ajax(Asynchronous JavaScript And XML)

  • 자원관리 및 공유
    - Spring Framework

  • JavaSE(JDK, JRE)

  • JavaEE(Servlet/JSP, EJB, Web Service)

  • JavaME

JavaEE와 하위 기술들 버전

ServletJSPEJB
JavaEE 52.52.13.0
JavaEE 62.52.23.1
JavaEE 72.52.33.2
JavaEE 82.52.33.2

JavaEE 기술과 구현 서버(Implements)

JavaEE <- 기술
JavaEE Implements (JavaEE 구현 서버) <- 프로그램

  • JavaEE 기술 규격에 맞춰서 동작하도록 제작된 서버
  • WebLogic (Oracle) - 유로
  • WebSphere (IBM) - 유료
  • JBoss (RedHat) - 유료/무료
  • JEUS (TmaxSoft) - 유료
  • Geronemo (Apache 재단) - 무료
  • GlassFish (Oracle) - 무료

JavaEE Application 개발

JavaEE App. 개발과 JavaEE 서버

JavaEE 기술규격에 맞춰 제작된 App이라면 어떤 JavaEE 서버에서도 실행할 수 있다.

JavaEE 버전과 App. 개발

  • JavaEE 상위 버전은 JavaEE 하위 버전으로 만든 APP을 실행가능
  • JavaEE 하위 버전은 JavaEE 상위 버전으로 만든 APP을 실행 불가능
JavaEEWebLogic
JavaEE 1.3Weblogic 6.1, 7.0, 8.1
JavaEE 1.4Wblogic 9.0
JavaEE 5Weblogic 10.0, 11.x
JavaEE 6Weblogic 12cR1
JavaEE 7Weblogic 12cR2
JavaEE 8Weblogic 14.c

Tomcat 서버와 JavaEE

  • JavaEE
    • Sevlet, JSP
      -> Tomcat, Resin, Jetty(JavaEE 기술 중 Servlet/JSP 기술 규격만 지원하는 서버) -> Web Container
    • JSF, JSTL(JSP+JSTL)
      -> Web Container에서 라이브러리 옵션이 설치되었을 경우 실행 가능
    • EJB
    • WebService

Tocmat 서버 버전과 App 개발

ServletJSPJavaEE
Tomcat 94.02.38
Tomcat 83.12.37
Tomcat 73.02.26
Tomcat 62.52.15
Tomcat 52.42.04
Tomcat 42.31.23
Tomcat 32.21.12

Web Application 개발 예

  • Tocmat 9
  • JavaEE 8
    • servlet 4.0
    • JSP 2.3
  • 웹브라우저
    (웹브라우저에서 실행하기 때문에 웹브라우저 지원능력에 따라서 html,css,javascript 버전이 달라진다)
    • HTML
    • CSS
    • JavaScript

Tomcat 서버의 핵심 부품

현업에서 시스템을 구축할 때

서블릿 컨테이너에 배포하는 웹 애플리케이션의 구조

$CATALINA_HOME/
	webapps/애플리케이션 폴더
			|-WEB-INF/
  				|-classes/ <- 자바 클래스파일(.class),
                              설정파일(.properties, xml등) // SQL 매퍼파일, 다국어 파일
                |-lib/ <- 자바 라이브러리 파일(.jar)
  				|-web.xml/ <- 웹 애플리케이션 배치 설정 파일(deployment descripter file(DDFile)
                |-* <- 웹 애플리케이션에서 사용할 기타 설정파일,
  					   JSP파일(Spring Web MVC 사용시) // 프레임워크 설정 파일 등

EclipseIDE로 웹 애플리케이션을 배포하기

서블릿 컨테이너가 관리하고 실행하는 웹 애플리케이션 컴포넌트(객체)

  1. Tomcat
  • 컴포넌트 관리(생성->실행->소멸)
  1. 웹 애플리케이션 컴포넌트
  • 서블릿 (요청 처리)
  • 필터 (서블릿 실행 전/후 보충작용)
  • 리스너 (서블릿 컨테이너가 특정상태에 놓일때 실행)
    • 이벤트(요청 발생, 세션 생성, 소멸, 서버가 시작/종료)

0개의 댓글