웹 개발 기초/자바 웹을 다루는 기술

유즈빈 액션 태그를 이용한 회원 정보 조회 실습

sungw00 2023. 3. 1. 01:26
728x90

자바 코드로 이루어진 자바 빈을 자주 사용할 경우 화면이 복잡해진다는 단점이 존재

-> 이러한 단점을 보완하기 위해 나온 유즈빈 액션 태그

 

유즈빈 액션 태그: JSP 페이지에서 자바 빈을 대체하기 위한 태그

 

유즈빈 액션 태그의 형식

<jsp:useBean id="빈 이름" class="패키지 이름을 포함한 자바 빈 클래스 [scope="접근범위"]/>
  • id는 JSP 페이지에서 자바 빈 객체에 접근할 때 사용할 이름을 의미
  • class는 패키지 이름을 포함한 자바 빈 이름을 의미
  • scope는 자바 빈에 대한 접근 범위를 지정하는 역할(page, request, session, application을 가지며 기본값은 page)

유즈빈 액션 태그를 이용해 회원을 등록하고 조회하는 예제

1. member2.jsp 파일 작성

<%-- member2.jsp --%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	import="java.util.*, sec01.ex01.*"    pageEncoding="UTF-8"%>
<%
	request.setCharacterEncoding("utf-8"); <%-- useBean에 속성 값을 설정하기 전 한글 인코딩 작업 --%>
%>
<jsp:useBean id="m" class="sec01.ex01.MemberBean" scope="page" /> <%-- 유즈빈 액션 태그로 id가 m인 MemberBean 객체를 만듬 --%>
<%
	String id = request.getParameter("id");
	String pwd = request.getParameter("pwd");
	String name = request.getParameter("name");
	String email = request.getParameter("email");
	/* MemberBean m = new MemberBean(id, pwd, name, email); */ <%-- 자바 코드에서 MemberBean 객체를 생성하지 않음 --%>
	<%-- useBean에 전송된 회원 정보를 출력 --%>
	m.setId(id);
	m.setPwd(pwd);
	m.setName(name);
	m.setEmail(email);
	
	MemberDAO memberDAO = new MemberDAO();
	<%-- 회원 정보를 추가한 후 목록으로 출력 --%>
	memberDAO.addMember(m);
	List membersList = memberDAO.listMembers();
%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>회원 목록창</title>
</head>
<body>
	<table align="center" width="100%">
		<tr align="center" bgcolor="#99ccff">
			<td width="7%">아이디</td>
			<td width="7%">비밀번호</td>
			<td width="5%">이름</td>
			<td width="11%">이메일</td>
			<td width="5%">가입일</td>
		</tr>
<%
	if (membersList.size() == 0) {
%>
	<tr>
		<td colspan="5">
			<p align="center"><b><span style="font-size:9pt;">
				등록된 회원이 없습니다.</span></b></p>
		</td>
	</tr>
<%
} else {
	for(int i=0; i<membersList.size(); i++) {
		MemberBean bean = (MemberBean)membersList.get(i);
%>
	<tr align="center">
		<td>
			<%= bean.getId() %>
		</td>
		<td>
			<%= bean.getPwd() %>
		</td>
		<td>
			<%= bean.getName() %>
		</td>
		<td>
			<%= bean.getEmail() %>
		</td>
		<td>
			<%= bean.getJoinDate() %>
		</td>
	</tr>
<%
	} // end for
} // end if
%>
	<tr height="1" bgcolor="#99ccff">
		<td colspan="5"></td>
	</tr>
	</table>
</body>
</html>

 

2. http://localhost:8090/pro13/memberForm.html 요청하여 회원 정보 작성 후 가입하기 클릭

회원 정보 입력 후 가입하기 클릭

 

자바 빈을 사용했을 때와 같이 추가된 새 회원과 함께 회원 목록을 출력한다.

회원 등록 후 회원 목록 출력

눈으로 보는 출력 결과는 같지만 유즈빈 액션 태그를 사용하면 굳이 자바 코드를 사용하지 않고도 JSP 페이지에서 처리할 수 있다는 점에서 효율적이다.

728x90