디랙티브
page, include, taglib
스크립트
스크립트릿<% %> - 자바코드를 실행
표현식<%= %> - 값을 출력
선언문<%! %> - 메서드 함수를 만듦
액션태그
<jsp:include>
정적(HTML, 텍스트 파일 등) 또는 동적(서블릿/JSP) 자원을 including하는 자바 코드를 생성한다.
<jsp:forward>
현재 페이지의 실행을 멈추고 다른 정적, 동적 자원으로 forwarding하는 자바 코드를 생성한다
<jsp:useBean>
<jsp:useBean>은 application, session, request, page 보관소에 저장된 자바 객체를 꺼낼 수 있다.
만약 보관소에 저장된 객체가 없다면 새로 생성하여 해당 보관소에 저장한다.
<jsp:useBean> - id 속성
객체의 이름을 설정한다. 이 이름은 3군데에서 사용된다.
① 꺼낸 객체의 참조 변수 이름
② getAttribute()로 값을 꺼낼때 사용하는 이름
③ 객체를 생성할경우 보관소에 저장하는 key값의 이름
<jsp:useBean> - scope 속성
보관소를 지정한다. page(기본값), request, session, application 중 하나를 지정할 수 있다.
- page = JspContext(기본값)
- request = ServletRequest
- session = HttpSession
- application = ServletContext
<jsp:useBean> - class 속성
class 속성은 자바 객체를 생성할 때 사용할 클래스 이름을 지정한다.
반드시 패키지 이름을 포함해야한다. (QName)
new 연산자를 사용하므로 인터페이스는 올 수 없다.
scope에서 지정한 보관소에서 객체를 찾지 못할 경우 class의 값을 사용해서 인스턴스를 생성한다.
생성된 객체는 scope 보관소에 자동으로 저장된다.
class 속성이 없으면 객체를 생성할 수 없다.
<jsp:useBean> - type 속성
type 속성에는 참조 변수를 선언할 때 사용할 타입(클래스, 인터페이스)을 지정한다.
반드시 패키지 이름을 포함한 QName을 지정해야 한다.
type 값을 지정하지 않으면 class 속성의 값을 사용한다.
setProperty - 자바 빈의 프로퍼티 값을 설정한다.
getProperty - 자바 빈의 프로퍼티 값을 꺼낸다.
내장객체
request | javax.servlet.http.httpServletRequest 또는 javax.servlet.ServletRequest |
웹 브라우저의 요청 정보를 저장하고 있는 객체 |
response | javax.servlet.http.httpServletResponse 또는 javax.servlet.ServletResponse |
웹 브라우저의 요청에 대한 응답 정보를 저장하는 객체 |
out | javax.servlet.jsp.JspWriter | JSP 페이지의 출력할 내용을 가지고 있는 출력 스트림 객체 |
session | javax.servlet.http.HttpSession | 하나의 웹 브라우저 내에서 정보를 유지하기 위한 세션 정보를 저장하고 있는 객체 |
application | javax.servlet.ServletContext | 웹 애플리케이션 Context의 정보를 담고 있는 객체 |
pageContext | javax.servlet.jsp.PageContext | JSP 페이지에 대한 정보를 저장하고 있는 객체 |
page | java.lang.Object | JSP 페이지를 구현한 자바 클래스 객체 |
config | javax.servlet.ServletConfig | JSP 페이지에 대한 설정 정보를 담고 있는 객체 |
exception | java.lang.Throwable | JSP 페이지에서 예외가 발생한 경우 사용하는 객체 |
setAttribute() & getAttribute
request, session, application, pageContext 내장 객체는
속성(attribute)값을 저장하고 읽을 수 있는 메소드 제공속성값을 저장하고 읽을 수 있는 기능은
JSP 페이지 및 서블릿 간 정보를 주고받을 수 있도록 함
void setAttribute(String key, Object value) | 해당 내장 객체의 속성값을 설정하는 메소드 key 속성명에 value 속성값을 지정 |
java.util.Enumeration getAttributeNames() | 해당 내장 객체의 속성명을 읽어오는 메소드 모든 속성의 이름을 얻어옴 |
Object getAttribute(String key) | key 속성명에 해당하는 속성값 반환 |
void removeAttribute(String key) | key 속성명에 해당하는 속성 제거 |
'JSP' 카테고리의 다른 글
잊지말아야할 mysql 오류 (0) | 2021.04.15 |
---|---|
JSP form data 연결 (0) | 2021.04.10 |
JSP Session (0) | 2021.04.10 |