티스토리 뷰
반응형
1. 필수 jar 파일( WEB-INF > lib 폴더에 복사)
2. 이클립스에서 pool.jocl 파일 작성하기(경로 : src > pool.jocl)
:: MySQL ::
<object class="org.apache.commons.dbcp.PoolableConnectionFactory" xmlns="http://apache.org/xml/xmlns/jakarta/commons/jocl"> <object class="org.apache.commons.dbcp.DriverManagerConnectionFactory"> <string value="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8"/> <string value="test"/> <string value="test"/> </object> <object class="org.apache.commons.pool.impl.GenericObjectPool"> <object class="org.apache.commons.pool.PoolableObjectFactory" null="true" /> </object> <object class="org.apache.commons.pool.KeyedObjectPoolFactory" null="true"/> <string null="true"/> <boolean value="false"/> <boolean value="true"/> </object>
:: Oracle ::
<object class="org.apache.commons.dbcp.PoolableConnectionFactory" xmlns="http://apache.org/xml/xmlns/jakarta/commons/jocl"> <object class="org.apache.commons.dbcp.DriverManagerConnectionFactory"> <string value="jdbc:oracle:thin:@localhost:1521:XE"/> <string value="test"/> <string value="test"/> </object> <object class="org.apache.commons.pool.impl.GenericObjectPool"> <object class="org.apache.commons.pool.PoolableObjectFactory" null="true" /> </object> <object class="org.apache.commons.pool.KeyedObjectPoolFactory" null="true"/> <string null="true"/> <boolean value="false"/> <boolean value="true"/> </object>
3. 커넥션 풀 초기화(경로 : src > DBCPInit.java)
import java.util.StringTokenizer;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
public class DBCPInit extends HttpServlet{
@Override
public void init(ServletConfig config) throws ServletException {
try{
String drivers = config.getInitParameter("jdbcDriver");
StringTokenizer st = new StringTokenizer(drivers, ",");
while(st.hasMoreTokens()){
String jdbcDriver = st.nextToken();
Class.forName(jdbcDriver);
}
Class.forName("org.apache.commons.dbcp.PoolingDriver");
}catch(Exception e){
throw new ServletException(e);
}
}
}
4. web.xml파일에 DBCPInit 등록하기
<servlet> <servlet-name>DBCPInit</servlet-name> <servlet-class>DBCPInit</servlet-class> <init-param> <param-name>jdbcDriver</param-name> <param-value>com.mysql.jdbc.Driver</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet>
5. 커넥션 풀 사용하기
:: test.jsp ::
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>회원 목록</title>
</head>
<body>
<caption>Member 테이블의 내용</caption>
<table width="100%" border="1">
<thead>
<tr>
<th>이름</th>
<th>아이디</th>
<th>이메일</th>
</tr>
</thead>
<tbody>
<%
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
String jdbcDriver = "jdbc:apache:commons:dbcp:/pool";
conn = DriverManager.getConnection(jdbcDriver);
pstmt = conn.prepareStatement("select * from ez_member");
rs = pstmt.executeQuery();
while(rs.next()){
%>
<tr>
<td><%= rs.getString("name") %></td>
<td><%= rs.getString("id") %></td>
<td><%= rs.getString("email") %></td>
</tr>
<%
}
}catch(SQLException se){
se.printStackTrace();
}finally{
if(rs != null) rs.close();
if(pstmt != null) pstmt.close();
if(conn != null) conn.close();
}
%>
</tbody>
</table>
</body>
</html>
반응형
'Web Dev > JSP' 카테고리의 다른 글
| [JSP] MySQL jdbcDriver 자동로드 및 트랜잭션 처리하기. (0) | 2013.06.05 |
|---|---|
| [JSP] MySQL + JSP로 DB연결하여 결과 가져오기 (0) | 2013.06.05 |
| [JSP] 세션시간 설정하기 (0) | 2013.06.04 |
| [JSP] jsp:include 와 include 디렉티브의 차이 (0) | 2013.06.04 |
| [JSP] 코드 조각 자동 포함시키기 (0) | 2013.06.04 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- attr
- Click
- Next
- Filter
- create
- event
- centOS
- asp
- select
- jsp
- Oracle
- 실시간
- 제이쿼리
- 인천공항
- focus
- MySQL
- android
- jquery
- 비행기
- Selector
- dom
- submit
- Drop
- ready
- html
- javascript
- If
- regexp
- 기초
- 항공편
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
글 보관함
commons-dbcp-1.2.2.jar