2011. 1. 25. 13:36
JSP의 주된 목적은 웹 브라우저에 보여줄 html 문서를 생성하는것이다.
<%@ %> : 지시어(Directive) -> 페이지에 대한 설정 정보를 지정
                <%@ page   ..... %>
                <%@ taglib  ..... %>   
                <%@ include  .....%>    : 다른 페이지를 포함시키는 용도
<%! %> : 선언문(Declaration)
              클래스의 멤버변수, 멤버메서드를 선언하기 위한 문법
              init(), destroy() 메서드는 선언문 안에서 선언해야 한다. 
<%= %> : 표현식
               변수값, 메서드 호출결과를 화면에 출력하는 부분
<%-- --%> : 커멘트
                   JSP에서 사용되는 주석문
                  ☆  HTML에서 사용하는 주석문<!-- --> 과의 차이점
                  - 서블릿 코드에 <%-- --%>로 작성된 주석은 들어가지 않는다.
<% %> : 스크립트릿(Scriptlet)
             자바코드를 실행한다.

◇JSP 페이지의 구성 요소

- 디렉티브(Directive)

- 스크립트 : 스크립트릿(Scriptlet), 표현식(Expression), 선언부(Declaration)

- 표현 언어(Expression Language)

- 기본 객체 (Implicit Object)

- 정적인 데이터

- 표준 액션태크(Action Tag)

- 커스텀 태그(Custom tag)와 표준 태그 라이브러리(JSTL)

◇page 디렉티브

: JSP 페이지에 대한 정보를 입력하기 위해 사용

>페이지 디렉티브 주요 속성

속성

설명

기본값

language

JSP 스크립트 코드에서 사용되는 프로그래밍 언어를 지정한다.

java

contentType

JSP가 생성할 문서의 타입을 지정한다.

text/html

import

JSP 페이지에서 사용할 자바 클래스를 지정한다.

session

JSP 페이지가 세션을 사용할지의 여부를 지정한다.

“true"일 경우 세션을 사용하고,

”false"일 경우 세션을 사용하지 않는다.

true

buffer

JSP 페이지의 출력 버퍼의 크기를 지정한다. “none"일 경우 출력 버퍼를 사용하지 않으며, ”8kb"라고 입력한 경우 8킬로바이트 크기의 출력 버퍼를 사용한다.

최소

8kb

autoFlush

출력 버퍼가 다 찼을 경우 자동으로 버퍼에 있는 데이터를 출력 스트림에 보내고 비울지의 여부를 나타낸다.

"true"일 경우 버퍼의 내용을 웹 브라우저에 보낸 후 버퍼를 비우며, “false"일 경우 에러를 발생시킨다.

true

info

JSP 페이지에 대한 설명을 입력한다.

errorPage

JSP 페이지를 실행하는 도중에 에러가 발생할 때 보여줄 페이지를 지정한다.

isErrorPage

현재 페이지가 에러를 발생될 때 보여지는 페이지인지의 여부를 지정한다. “true”일 경우 에러 페이지이며, “false"일 경우 에러 페이지가 아니다.

false

pageEncoding

JSP 페이지 자체의 캐릭터 인코딩을 지정한다.

isELignored

"true"일 경우 표현 언어를 지원하며, “false"일 경우 표현 언어를 지원하지 않는다.

기본값은 web.xml 파일이 사용하는 JSP 버전 및 설정에 따라 다르다.

deferredSyntaxAllowedAsLiteral

#{ 문자가 문자열 값으로 사용되는 것을 허용할지의 여부를 지정한다.

false

trimDirectiveWhitespaces

출력 결과에서 템플릿 텍스트의 공백 문자를 제거할지의 여부를 지정한다.

false

스크립트 요소

스크립트 요소는 JSP 프로그래밍에서 로직을 수행하는 데 필요한 부분으로, 스크립트 코드를 사용하여 프로그램이 수행해야 하는 기능을 구현할 수 있다.

JSP의 스크림트 요소에는 다음과 같이 세가지가 있다.

★ 스크립트릿(Scriptlet) : JSP 페이지에서 자바 코드를 실행할 때 사용되는 코드의 블록이다.

<%

자바코드 1;

자바코드 2;

자바코드3;

%>

★ 표현식(Expression) : 어떤 값을 출력 결과에 포함시키고자 할 때 사용된다.

<%= 값 %>

★ 선언부(Declaration) : JSP 페이지의 스크립트릿 표현식에서 사용할 수 있는 함수를 작성할 때 사용된다.

<%!

public 리턴 타입 메서드이름(파라미터 목록) {

자바 코드1;

자바 코드2;

.....

자바 코드n;

return 값;

}

%>






[웹요청 처리 SCOPE]

PAGE : 한 페이지

REQUEST : 요청 -> 응답까지

SESSION : 로그인 -> 로그아웃

APPLICATION : 서버시작 -> 서버종료




[JSP기본 객체]

pageContext : PAGE SCOPE에서 사용되는 데이터를 처리할 수 있는 객체

request : REQUEST SCOPE에서 사용되는 데이터를 처리할 수 있는 객체

request.setAttribute(name,value)

request.getAttribute(name)

session : SESSION SCOPE에서 사용되는 데이터를 처리할 수 있는 객체

HttpSession session = request.getSession();

session.setAttribute(name, value)

session.getAttribute(name)

application : APPLICATION SCOPE에서 사용되는 데이터를 처리할 수 있는 객체

out

exception

page

config

기본 객체의 속성(Attribute 사용하기

>속성 처리 메서드

메서드

리턴 타입

설명

setAttribute(String name,

object value)

void

이름이 name인 속성의 값을 value로 지정한다.

getAttribute(String name)

Object

이름이 name인 속성의 값을 구한다. 지정한 이름의 속성이 존재하지 않을 경우 null을 리턴한다.

removeAttribute(String name)

void

이름이 name인 속성을 삭제한다.

getAttributeNames()

java.util.

Enumeration

속성의 이름 목록을 구한다.(pageContext 기본 객체는 이 메서드를 제공하지 않는다.)



[액션태그]

<jsp:include>

<jsp:include page = "login.jsp"/>

<jsp:forward>

<jsp:param>

==>key==100 값을 가지고 test.jsp페이지 이동

<jsp:forward page = "test.jsp">

<jsp:param name = "key value = "100" />

<jsp:forward>

'Java > JSP' 카테고리의 다른 글

색상테이블 / 색상표 / 색상코드  (0) 2011.01.25
login 처리. / home 간단 sample 처리.  (0) 2011.01.25
JSP == Servlet (궁극적으로...)  (0) 2011.01.25
서블릿 (ⅱ)  (0) 2011.01.25
서블릿 (ⅰ)  (0) 2011.01.24
Posted by Triany