WEB

JSP란?

긍.응.성 2020. 4. 10. 00:23
반응형

JSP에 대해 찾아보고 공부하면서 작성한 글입니다. 내용 중 잘못된 내용이 있다면 짚어주세요~

 


from wikipedia

JSP

JSP는 HTML내에 자바 코드를 삽입하여 웹 서버에서 동적으로 웹 페이지를 생성하여 웹 브라우저에게 돌려주는 언어이다. Java EE 스펙 중 일부로 WAS에서 동작한다... 위키피디아

  • Servlet이 Java 소스안에 HTML을 작성한다면, JSP는 HTML에 Java코드를 삽입한다.
  • 정적인 HTML에 동적으로 사용자가 입력한 content를 혼합하여 동적인 웹페이지를 생성한다.

JSP의 특징

  • 스크립트 언어이기 때문에 자바 기능을 그대로 사용할 수 있다.
  • Tomcat(WAS)이 만들어놓은 객체를 사용한다.
  • 사용자 정의 태그를 사용하여 효율적으로 웹사이트를 구성하 수 있다.
  • HTML 코드안에 Java코드가 있기 때문에 HTML코드를 작성하기 쉽다
  • Servlet과 다르게 JSP는 수정된 이후 재배포할 필요 없이 Tomcat이 알아서 처리해준다.

동작구조

  • 클라이언트에서 서비스가 요청되면, JSP가 실행되고, 웹 애플리케이션 서버의 서블릿 컨테이너에서 JSP는 Java Servlet으로 변환된다(.java).
  • WAS는 변환한 Servlet을 동작하여 서비스를 수행한다.

Lifecyle

서블릿과 거의 동일하다

1) init

 public void jspInit()

2) service

public void jspService()

3) destory

 public void jspDestroy()

 


 

JSP 문법

1. JSP Expression

<%= expression %>

  • JSP Expression element는 String으로 변환되어 Servlet 출력에 삽입된다.
  • 동적인 페이지를 생성한다.
  • 끝에 세미콜론을 붙이지 않는다

2. JSP Scriptlet

<% code fragment %>

  • 간단한 값이 아닌 더 복잡한 것을 수행하고자 할 때 사용.
  • 임의의 Java 코드 삽입가능.
  • 메서드가 아닌 변수만 선언가능

3. JSP Declaration

<%! declaration %>

  • JSP Declaration을 사용하면 Servlet 클래스에 삽입되는 메서드나 필드를 정의할 수 있다.
  • Scriptlet과 달리 메서드와 변수 모두 선언할 수 있다.

4. JSP Comment

<%-- comment --%>

  • 주석

5. JSP Directive

<%@ directive %>

  • JSP 페이지의 전체 구조에 영향을 미친다.
  • 전체 구조에 대해 WAS에 지시를 내린다
  • 구성
    • page
      jsp 전체에 적용되는 정보를 기술한다
    • include
      외부 파일의 내용을 현재 JSP에 병합
      현재 jsp페이지를 기준으로 상대적인 url을 사용한다
    • taglib
      액션을 사용할 때 이용

 


 

참고자료

반응형