[JSP] 자바빈 액션태그 <jsp:useBean>
자바빈 액션태그 <jsp:useBean>
- 자바빈을 JSP 페이지에서 사용하는 데는 3가지 액션 태그를 제공한다.
- 자바빈 관련 액션 태그
자바 빈 관련 액션 태그 | 내용 |
<jsp:useBean id="..." class="..." scope="..."/> | 자바빈 객체를 생성 |
<jsp:setProperty name="..." property="..." value="..." /> | 생성된 자바빈 객체에 프로퍼티 값을 저장 |
<jsp:getproperty name="..." property="..." /> | 생성된 자바빈 객체에서 저장된 프로퍼티 값을 가져옴. |
1. <jsp:useBean> 액션 태그
- 자바빈 객체를 생성한다.
<jsp:useBean id="test" class="com.bean.testBean" scope="page" />
- id 속성은 생성될 자바빈 객체(인스턴스)의 이름을 명시 한다.
- class 속성은 객체가 생성될 자바빈 클래스를 기술 (패키지명을 포함한 자바 클래스)
- scope 속성은 자바빈 객체의 유효 범위로 자바빈 객체가 공유되는 범위를 지정한다. 생략시 default는 "page"
( page, request, session, application )
- 이것은 자바에서 객체를 생성하는 다음의 문장과 동일하다
SimpleBean test = new TestBean();
- <jsp:useBean) 액션 태그에서 id 속성값에 지정한 이름이 이미 존재하는 경우 자바빈 객체를 새로 생성하는 것이 아니라 기존에 생성된 객체를 그대로 사용한다. (id, class, scope 모두 같아야 같은 객체가 된다.)
2. <jsp:setProperty> 액션 태그
- 생성된 자바빈 객체에 프로퍼티 값을 저장하기 위해 사용된다.
<jsp:setProperty name = "testBean" property="name" value="lee" />
- name 속성은 자바빈 객체의 이름을 명시한다 (필수)
- property 속성은 프로퍼티 명을 기술한다. (필수)
- value 속성은 프로퍼티에 저장할 값을 기술한다. (생략 가능)
<jsp:useBean id="testBean" class="com.bean.testBean" scope="page">
<jsp:setProperty name="testBean" property="name" />
</jsp:useBean>
- 위의 <jsp:setProperty name="testBean" property="name" /> 액션 태그는 자바빈 클래스의 setName() 메소드와 자동 연동된다.
- 즉 프로퍼티명 name 은 자바빈 클래스의 name 프로퍼티를 의미한다.
- Property 속성값을 * 를 주면 모든 프로퍼티 값이 세팅된다. 그러나 폼으로부터 넘어오는 파라미터의 이름과 개수가 프로퍼티의 이름과 개수와 일치해야 한다.
<jsp:useBean id="testBean" class="com.bean.testBean" scope="page">
<jsp:setProperty name="testBean" property="*" />
</jsp:useBean>
- 폼으로부터 넘어온 파라미터 명과 자바빈의 프로퍼티가 일치하지 않는 경우 param 속성을 기술해야 한다.
<jsp:useBean id="testBean" class="com.bean.testBean" scope="page">
<jsp:setProperty name="testBean" property="name" param="userName" />
</jsp:useBean>
- 폼으로부터 넘어온 name 의 파라미터 명이 "userName" 일 경우 위와 같이 param을 기술해 준다.
3. <jsp:getProperty> 액션 태그
- 자바빈 객체에서 저장된 프로퍼티 값을 사용하기 위해 사용된다.
<jsp:getProperty name = "testBean" property="name" />
- name 속성은 자바빈 객체의 이름을 명시한다. (필수)
- property 속성은 프로퍼티 명을 기술한다. (필수)
<jsp:useBean id="testBean" class="com.bean.testBean" scope="page" />
<jsp:getProperty name="testBean" property="name" />
- useBean 으로 생성한 testBean 의 name 속성을 가져온다.
출처: https://hyeonstorage.tistory.com/96?category=554979 [개발이 하고 싶어요]
'Java 관련 > JSP,Servlet' 카테고리의 다른 글
[JSP] JDBC 프로그래밍에 사용되는 객체 (0) | 2019.07.17 |
---|---|
[JSP] JDBC를 사용한 데이터베이스 연동 (0) | 2019.07.17 |
[JSP] web.xml 에러 페이지 처리 (0) | 2019.07.17 |
[JSP] HTTP 에러코드 정리 (0) | 2019.07.17 |
[JSP] forward 액션 태그 <jsp:forward > (0) | 2019.07.17 |
[JSP] include 액션 태그 <jsp:include> (0) | 2019.07.17 |
[JSP] 액션 태그(Action tag) <jsp: > (0) | 2019.07.17 |
[JSP] JSP 내장 기본 객체의 영역(scope) (0) | 2019.07.17 |