관리 메뉴

nkdk의 세상

22장 db접속은 이렇게 하세요. 본문

My Programing/JSP and Servlet

22장 db접속은 이렇게 하세요.

nkdk 2008. 3. 9. 01:07
db접속은 빈으로 파일을 만들어서 그 파일에서
컨넥션 풀을 이용하여 만든 후에 사용한다. 권장사항!!이 아니라
이걸로만 이용하라!

ConnBean2.java 에서 다음과 같이 한다. 이제 db를 이렇게 접속 하세요.

ConnBean2.java
package sawon;
import java.sql.*;
import java.util.*;

import sawon.RegisterBean;

public class ConnBean2 {
private DBConnectionMgr pool;
Connection conn=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
Vector<RegisterBean> vlist = new Vector<RegisterBean>();
public ConnBean2() {
try {
pool = DBConnectionMgr.getInstance();
conn= pool.getConnection();
} catch (Exception e) {
System.out.println("db연결 실패 : "+e);
return;
}
}

public Vector getData() {
try {
String sql = "select * from person";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next()) {
RegisterBean rbean = new RegisterBean();
rbean.setBun(rs.getInt("bun"));
rbean.setIrum(rs.getString("Irum"));
rbean.setNai(rs.getInt("nai"));
vlist.add(rbean);
}
} catch (Exception e) {
System.out.println("SQL오류 : "+e);
}finally{
try {
pool.freeConnection(conn,pstmt,rs);
} catch (Exception e) {}
}
return vlist;
}

}

// beandb5.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR" import="java.util.*"%>
<%@page import="sawon.RegisterBean"%>
<html><body><h2>개인자료 (Beans 이용 DB연결) **</h2>
<table width=300 border=1>
<tr align=center bgcolor=pink>
<td>번호</td><td>이름</td><td>나이</td>
</tr>
<jsp:useBean id="sk" class="sawon.ConnBean2" scope="page"/>
<%
Vector vlist = sk.getData();
for(int i = 0;i < vlist.size(); i++) {
RegisterBean rbean = (RegisterBean)vlist.elementAt(i); //rbean을 가져온다.
%>
<tr align=center>
<td><%=rbean.getBun() %></td>
<td><%=rbean.getIrum() %></td>
<td><%=rbean.getNai() %></td>
</tr>
<%
}
%>
</table></body></html>