2013년 3월 11일 월요일

[JSP] 자바 빈

보통 웹사이트를 둘러보면 Form태그의 입력창에다가 데이터를 입력하고 웹 서버에 데이터의 처리를 요청한다. 요청받은 데이터는 JSP를 통해 처리되는데 처리된 데이터를 저장해야하는 경우가 많다.

JSP에서는 요청받은 데이터를 받아 데이터를 저장할 객체를 생성한다.
이 객체를 자바 빈이라고 하며 form으로부터 전달받은 데이터를 객체로 보관하기 위해 사용한다.

자바 빈을 생성한 뒤 실제로 DB에 저장하기 위해 DAO(Data Access Object)라는 데이터 접근 오브젝트를 사용한다. 이 때 DAO는 static클래스이기 때문에 static의 특징을 모두 가지고 있다.

그렇다면 어떻게 JSP에서 자바 빈을 사용할까?
<jsp:useBean> 태그를 이용하여 간단하게 자바 빈 객체를 만들 수 있다.

예) <jsp:useBean id="obj" class="mall.PersonalInfo"/> //자바 빈 생성
<jsp:setProperty name="obj" property="*"/>//form으로부터의 모든 데이터 저장
<jsp:setProperty name="obj" property="age" value="27"/>//자바 빈 객체에 age라는 변수에 27을 삽입

JSP에서 가장 중요힌 것은 데이터를 어떻게 전달하고 전달받는 것인가이다. 명심하도록 하자!

데이터 전달방법
1. form태그에서 submit으로 데이터 전달(hidden시켜서 데이터를 전달해야하는 경우도 있다.)

2. a태그에서 href속성을 이용한 데이터 전달
예) <a href="Index.jsp?contents=module/register.jsp">회원가입</a>

3. request.setAttribute()로 request내장 객체에 속성값을 지정하여 request객체를 전달

4. 자바 액션 태그 forward를 이용한 데이터 전달. param에 데이터 값 지정
예)<jsp:forward page="Index.jsp">
    <jsp:param value="module/confirm.jsp" name="contents"/>
    </jsp:forward>

5. sendRedirect()를 이용하여 데이터 전달. a태그사용법과 같다.
예) response.sendRedirect("login_form.jsp?id=aaa");

6. 액션 태그 useBean응 이용하여 빈 객체를 생성하여 객체를 저장한다. 빈 객체를 이용하여 데이터 전달이 가능하다.
예)<jsp:useBean id="register" class="kosta.register.Register"></jsp:useBean>
    <jsp:setProperty property="*" name="register"/>

댓글 없음:

댓글 쓰기