1. JavaBeans 액션
2. <jsp:include> 액션
3. <jsp:forward> 액션
1. JavaBeans
- 가시적으로 조작할 수 있는 재사용 가능한 소프트웨어 컴포넌트
- Beans의 중요 구성요소
- 프로퍼티
- 메소드
- 이벤트
1.1 프로퍼티
- 구성요소
- 애트리뷰트
- getter/setter
- 종류
- 단순 프로퍼티: int, float ... + get/set
- 색인 프로퍼티: int[], float[] ... + get/set
- 부울 프로퍼티: boolean + is/set
1.2 액션
1.2.1<jsp:useBean> 액션
<jsp:userBean id="name" scope="page | request | session | application" class="classname"/>
- id 속성: 스크립팅 변수로 사용, 대소문자 구별
- scope 속성: 참조 객체의 사용 범위 지정(default: page)
- class 속성: 객체 구현을 정의하는 클래스 이름(FQN)
- 프로퍼티 구현
- 반드시 getter/setter를 지정할 필요는 없음
1.2.2<jsp:setProperty> 액션
<jsp:setProperty name="beanName" property="propertyName">
- name 속성: <jsp:useBean> 액션의 id 속성의 이름과 동일해야함
- property 속성: 값이 설정될 프로퍼티의 이름 지정
- param 속성: 프로퍼티에 설정될 값을 가지는 request 매개변수의 이름 지정
- value 속성: 주어진 property 속성의 값을 명시적으로 지정, request 매개변수보다 우선순위가 높음
1.2.3<jsp:getProperty> 액션
<jsp:getProperty name="name" property="propertyName"/>
- name 속성: 프로퍼티 값을 가져올 빈즈 객체의 이름 지정
- property 속성: 프로퍼티 이름을 지정
※ beans의 값을 가져오는 3가지 방법
1. 액션 이용 <jsp:getProperty name="sum" property="result"/>
2. 스크립틀릿 표현식 <%= sum.getResult()%>
3. EL 표현식 ${sum.result}
2. <jsp:include> 액션
include 지시어와 마찬가지로 다른 JSP 파일을 포함
<jsp:include page="urlSpec" flush="true | false"/>
<jsp:include page="urlSpec" flush="true | false">
<jsp:param name="name value="value"/>
</jsp:include>
- page 속성: 현재의 jsp 페이지에 포함될 상대적인 경로를 가지는 jsp 페이지 지정
- flush 속성: 설정시 출력 버퍼를 바로 비우도록함(default: false)
- <jsp:param> 요소를 사용하여 key/value 제공 가능
예시)
※한글 데이터 전달시 주의!!
<jsp:include page="header.jsp"/>
<%-- 한글 데이터 전달 시 request 객체 설정 --%>
<% request.setCharacterEncoding("UTF-8); %>
<jsp:include page="header.jsp">
<jsp:param name="date value="2020.06.09"/>
<jsp:param name="user" value="이난"/>
</jsp:include>
2.1 차이점
- include 지시어: 컴파일 시 정적 컨텐츠 포함
- <jsp:incldue> 액션: 실행 시 정적 또는 동적 컨텐츠 포함
3. <jsp:forward> 액션
동일한 컨텍스트(context)에 있는 다른 자원으로 요청 전달
<jsp:forward page="urlSpec"/>
<jsp:forward page="urlSpec">
<jsp:param name="name" value="value"/>
</jsp:forward>
- page속성: 현재의 jsp 페이지에서 이동할 상대적인 경로를 가지는 jsp 페이지 지정
'기타 > JSP' 카테고리의 다른 글
JSTL (0) | 2020.06.09 |
---|---|
JSP 표현식 언어와 태그확장 (0) | 2020.06.09 |
JSP 지시어 (0) | 2020.05.14 |
JSP 기본문법 (0) | 2020.05.14 |
JSP 웹 애플리케이션 (0) | 2020.05.14 |