🧩search_view.jsp
<body>
<form action="search_db.jsp">
검색하실 회원의 ID <input type="text" name="userid"><br>
<input type="button" value="전체회원보기"
onclick="location.href='list_db.jsp'">
<input type="submit">
</form>
<hr>
<table border="1">
<tr>
<th>아이디</th>
<th>비밀번호</th>
<th>이름</th>
<th>성별</th>
<th>상세주소</th>
</tr>
<c:choose>
<c:when test="${!empty requestScope.user }">
<c:set var="user" value="${requestScope.user }"/>
<tr>
<th>${user.userid }</th>
<th>${user.userpw }</th>
<th>${user.username }</th>
<th>${user.usergender }</th>
<th>${user.addrdetail }</th>
</tr>
</c:when>
<c:otherwise>
<c:forEach var="user" items="${requestScope.list }">
<tr>
<td>${user.userid }</td>
<td>${user.userpw }</td>
<td>${user.username }</td>
<td>${user.usergender }</td>
<td>${user.addrdetail }</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
</table>
</body>
🧩search_db
<body>
<%
UserDAO udao = new UserDAO();
String userid = request.getParameter("userid");
UserBean user = udao.searchById(userid);
request.setAttribute("user", user);
pageContext.forward("search_view.jsp");
%>
</body>
🧩list_db.jsp
<body>
<%
UserDAO udao = new UserDAO();
request.setAttribute("list", udao.getList());
pageContext.forward("search_view.jsp");
%>
</body>
🧩UserDAO.java
- sqlSession.selectOne ()
selectOne 메서드는 오직 하나의 객체만을 리턴해야 한다는 것이다.
한개 이상을 리턴하거나 null 이 리턴된다면, exception 이 발생할 것이다.
public UserBean searchById(String userid) {
return (UserBean)sqlsession.selectOne("User.searchById",userid);
}
public List<UserBean> getList() {
List<UserBean> result = sqlsession.selectList("User.getList");
return result;
}
🧩user.xml
//입력회원
<select id="searchById" parameterType="string" resultType="com.koreait.web.beans.UserBean">
SELECT * FROM TBL_USER tu WHERE USERID = #{userid}
</select>
//전체 회원
<select id="getList" resultType="com.koreait.web.beans.UserBean">
SELECT * FROM TBL_USER
</select>
🧩결과
- 검색한 회원보기
- 전체 회원보기