System.out.println("Hello, World");

'2012/05/03'에 해당되는 글 1건

  1. 2012.05.03 JSP의 개요

JSP -> 서블릿


서블릿

-callBack 

-init() - jspInit()

-service() _jspService()

-destroy() _jspDestroy()


JSP TAG

 - 스크립트 태그(Script) - java 코드를 넣는 tag

 - 액션 태그(tag) - JSP에서 JAVA코드를 대신하기 위한 tag

○ 표준 액션 tag : servlet/jsp spce에서 제공

○ Custom tag : 사용자 정의 태그


JSP TAG

 - 스크립트

 - action

 - Expression Language : 표현언어



JSP 스크립트 태그

- 지시자(Directive)태그


- 표현식(Expression) 태그

<%=dto.getId() %>


- 선언자(Declaration) 태그 (X)

쓰이는 경우는 거의 없다.


- 스크립트릿(Scriptlet) 태그

가장 많이 쓰인다.


 - 주석



○ 지시자 태그

- Web container가 JSP를 Servlet으로 변환 할때 특정 지시를 내리기 위해서 사용하는 태그

- 구문

<%@ 지시어 속성="값" [속성="값" . . ..] %>

<%@page import="member.dto.MemberDTO"%>

- 지시어

- page : 페이지의 기능, 특징을 지시

- include : jsp 페이지에 다른 페이지를 포함시킬 것을 지시

- taglib : jsp페이지에서 사용할 customer tag 라이브러리를 등록을 지시


-page 지시자

-페이지에 관련된 기능 환경을 정의하는 지시어

- 속성

import : jsp에서 사용할 클래스들을 import할때 사용

contentType : response.setContentType()의 인수로 들어갈 값 설정

session : 내장객체 session의 생성 여부 설정. 값 : true/false,true가 default

errorPage : jsp가 실행 도중 exception이 발생했을때 이동할 url 지정


○ 표현식 태그

-응답 Stream을 통해 출력하기 위한 태그

-구문

<%=출력내용%>

ex)

<%="안녕하세요"%> -> 서블릿 변환 -> out.print("안녕하세요");

<%int i=10;%><%=i> -> 서블릿 변환 -> out.print(i);

<%=dto.getId() %>

-서블릿으로 변환시 out.print(출력내용); 으로 변환됨


○ 선언자 태그

-JSP가 서블릿으로 변환될때 서블릿의 member 변수(Field)나 member 메소드를 선언할때 사용

-jspInit(), jspDestroy() 오버라이딩시 사용

_jspService()는 오버라이딩해서는 안된다.

-구문

<%! 선언문 %>


○ 스크립트 태그

-클라이언트의 요청에 대해 서비스하는 동적 코드(java 실행 구문)을 작성 하기 위한 태그

-태그내의 코드는 _jspService()의 로컬 코드로 삽입된다.

- 구문

<% java 코드%>

-ex)

<%if(i){%> ->java code

10보다 큽니다.-> html코드
<%}%> ->java 코드


-> _jspService(){

if(i>10){

out.println("10보다 큽니다.");

}

}


○ 주석

-jsp에서의 주석

-html주석 <!-- 주석 내용 --!> : client에 전송이 됨

-JSP 주석 : <%-- 주석내용 --%> : client에 전송이 안됨

-java 주석 : //, /*주석내용 */

-스크립트릿, 선언자 태그에서 사용 가능


○ 내장 객체(Implicit variable)

-JSP에서 기본적으로 제공해주는 객체

-변수의 선언, 객체의 생성, 할당 없이 JSP 태그에서 사용할 수 있는 객체

-JSP가 서블릿으로 변환될때 web container가 생성해서 제공

-종류

-request : HttpServletRequest

-response : HttpServletResponse

-out : JspWriter -Servlet에서의 PrintWriter 역할

-session : HttpSession -<%@ page session="false"%>로 설정하면 안 생긴다.

-application : ServletContext

-config : ServletConfig(초기 파라미터 조회 말고 안쓰인다)

-pageContext : PageContext - Servlet에는 없는 객체로 다른 내장 객체들을 생성할 수 있다.(커스텀 태그 만들때 쓰인다)

-page : this - 서블릿 객체 자신

-exception : Throwable -<%@ page isErrorPage="true"@%>로 설정된 경우만 생성(default는 false)


Posted by 김마농