Chap 11. <jsp:useBean> 액션 태그를 이용한 객체 사용
* 자바빈 ( JavaBean )
자바빈은 데이터를 표현하는 것을 목적으로 하는 자바 클래스.
-
자바빈 프로퍼티.
프로퍼티는 자바빈에 저장되어 있는 값을 나타낸다.
프로퍼티이름을 사용해서 메서드의 이름을 결정하게 된다.
* <jsp:useBean> 태그를 이용한 자바 객체 사용
-
<jsp:useBean> 액션 태그를 사용하여 객체 생성하기.
<jsp:useBean id="info", class="test.PersonInfo", scope="request"/>
scope 는 page, request, session, application. 기본값은 page
위의 useBean 정의는 아래와 같다. 해당 scope 에 이미 값이 존재하면 기존 값을 사용한다.
PersonInfo info = (PersonInfo) request.getAttribute( "info" );
if ( info == null ){
info = new PersonInfo();
request.setAttribute( "info", info );
}
class 대신 type 값을 사용할 수도 있는데 type 값을 사용할 경우에는 해당 scope 에 이미 값이 있다고 간주한다.
즉 다음과 같은 코드와 동일하다.
PersonInfo info = (PersonInfo) request.getAttribute( "info" );
if ( info == null ){
에러 던지기!!
}
-
<jsp:getProperty> 액션 태그와 <jsp:setProperty> 액션 태그.
<jsp:setProperty> 는 자바빈 객체의 프로퍼티를 변경하거나 읽어올 수 있다.
<jsp:useBean id="info" class="test.PersonInfo"/>
<jsp:setProperty name="info" property="name" value="감자"/>
value 대신에 param 값으로 사용할 경우에는 파라미터 값을 지정할 때 사용한다.
property 속성 값을 * 로 지정하면 각각의 프로퍼티 값을 같은 이름을 갖는 파라미터의 값으로 설정한다.
<jsp:useBean id="info" class="test.PersonInfo"/>
<jsp:setProperty name="info" property="*"/>
parameter 값을 assign 해서 object 를 만드는데 무지 유용하다.
<jsp:getProperty> 액션태그는 자바빈 객체의 프로퍼티 값을 출력할 떄 사용된다.
<jsp:getProperty name="info" property="name" />
cf) jsp:useBean 액션태그는 사용이 감소되고 있다.
MVC 를 사용할 경우 로직을 자바에서 처리하며, 이 경우 jsp:useBean 액션태그를 사용할 수 없다.
또한 표현 언어 ( Expression Language ) 의 등장으로 훨씬 간단하게 값 출력을 할 수 있다.
'프로그래밍 놀이터 > Web' 카테고리의 다른 글
Chap 13. 웹 어플리케이션의 일반적인 구성 및 방명록 구현 (0) | 2015.01.20 |
---|---|
Chap 12. 데이터베이스 프로그래밍 기초 (0) | 2015.01.18 |
Chap 10. 클라이언트와의 대화 2 : 세션 (0) | 2015.01.14 |
Chap 09. 클라이언트와의 대화 1 : 쿠키 (0) | 2015.01.11 |
Chap 08. 에러 처리 (0) | 2015.01.10 |
댓글