|
|
|
|
|
|
|
|
|
|
|
|
|
6만원 이상 무료배송
|
|
주문하시는
총상품금액의 합계가
6만원 이상일 경우
택배비가 무료입니다.
|
|
|
|
|
|
|
|
[JSP] DBCP을 이용한 데이터베이스 연결하기
|
|
|
작성자:
어라
작성일: 2009-07-07 11:17
조회: 14236
댓글: 0
|
|
|
DBCP는 TOMCAT 에서 제공되는 Connection pool 입니다.
[MySQL 연결방법] tomcat4.1 과 tomcat5.5 에서 테스트 하였습니다.
1. server.xml 설정
context안에 있는 resource 부분이 디비설정입니다.
<Host name="www.dbtool.co.kr" unpackWARs="true" autoDeploy="true"> <Alias>dbtool.co.kr</Alias> <Context path="" docBase="D:\home\www.dbtool.co.kr" debug="0" reloadable="true" crossContext="true"> <Resource name="jdbc/dbtool" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/dbtool" username="" password="" maxActive="100" maxIdle="10" removeAbandoned="true" maxWait="5000" /> </Context> </Host>
* 위와 같이하면 web.xml은 설정할 필요가 없습니다.
2. 테스트 소스(dbcp.jsp)
<%@ page contentType="text/html;charset=euc-kr" %> <%@ page import="java.sql.*" %> <%@ page import="javax.sql.*" %> <%@ page import="javax.naming.*" %>
<% Connection con = null; try{ Context ctx = new InitialContext(); DataSource ds = (DataSource)ctx.lookup("java:comp/env/" + "jdbc/dbtool"); con = ds.getConnection(); out.println(con); }catch (Exception e) { out.println(e.toString()); } %>
3. 실행결과(dbcp.jsp)
org.apache.tomcat.dbcp.dbcp.PoolableConnection@10a1d2d
위에는 테스트용이고 실제 커넥션 부분은 클래스를 만들어 사용하면 됩니다.
예제>
package kr.co.dbtool.db;
import java.sql.Connection; import java.sql.SQLException; import javax.sql.DataSource; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException;
public class DatabaseConnection { protected String dsname = null; protected Context ctx = null; protected DataSource ds = null; protected Connection con = null; public DatabaseConnection(){ this.dsname = "jdbc/dbtool"; } public DatabaseConnection(String dsname){ this.dsname = dsname; }
/** *기능 : DBCP Pool Connection 정보를 리턴한다 *@return Connection 정보 */ public Connection getConnection(){ try { ctx = new InitialContext(); ds = (DataSource)ctx.lookup("java:comp/env/"+dsname); con = ds.getConnection(); System.out.println(con); } catch(SQLException e) { System.out.println(e.toString()); } catch(NamingException ne) { System.out.println(ne.toString()+" : ctx => " + ctx); } return con; } }
|
|
|
|
|
* 관련 댓글 한말씀 부탁합니다.
|
|
|