DBCP를 이용한 PoolManager 클래스와 이용법 예제 > 온라인강의

본문 바로가기
 
 
 
오늘 1,645
어제 1,997
최대 2,454
전체 3,136,994
비즈니스의 시작 비즈명함 ~ 가격, 품질, 배송 3가지 만족을 드리는 비즈명함 / 즉석명함 / 급행서비스 / 서울 전지역 수도권일부 3시간배송

온라인강좌 홈 > 온라인강좌 > 온라인강좌

JSP | DBCP를 이용한 PoolManager 클래스와 이용법 예제

페이지 정보

작성일2012-05-22 14:00 조회4,312회 댓글0건

본문

-------------------------------------------------------------------------------------
DBCP를 이용하여 Connection 객체를 얻어오는 작업이 빈번하기에
빈즈화 시켜봄
특히 매니져 객체가 한번만 만들어질 수 있도록 변수를 static 으로 지정하였슴
-------------------------------------------------------------------------------------
PoolManager.java 의 소스
package pool;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
public class PoolManager {
 private static PoolManager instance = null;
    public static PoolManager getInstance() {
        if (instance == null) {
              instance = new PoolManager();
        }
        return instance;
    }
 public Connection getConnection(){
  DataSource ds=null;
  Connection con=null;
  try{
   Context ct1=new InitialContext();
   Context ct2=(Context)ct1.lookup("java:comp/env");
   ds=(DataSource)ct2.lookup("jdbc/zino");
   con=ds.getConnection();
  }catch(Exception e){
   e.printStackTrace();
  }
  return con;
 }
 public void freeConnection(Connection con){
  if(con!=null){try{con.close();}catch(Exception e){};} 
 }
  
 public void freeConnection(Connection con,PreparedStatement pstmt){
  if(con!=null){try{con.close();}catch(Exception e){};}
  if(pstmt!=null){try{pstmt.close();}catch(Exception e){};}
 };
 public void freeConnection(Connection con,PreparedStatement pstmt,ResultSet rs){
  if(con!=null){try{con.close();}catch(Exception e){};}
  if(pstmt!=null){try{pstmt.close();}catch(Exception e){};}
  if(rs!=null){try{rs.close();}catch(Exception e){};}
 };
}
 
 
-------------------------------------------------------------------------------------
위의 풀매니져를 사용하게 될 JSP 소스
-------------------------------------------------------------------------------------
<%@ page import="java.sql.*" %>
<%@ page import="pool.PoolManager" %>
<%
 PoolManager pool=PoolManager.getInstance(); // new 가 아님에 주의!! (싱글톤 패턴) 
 Connection con=pool.getConnection();
 String sql="select * from test";
 PreparedStatement pstmt=con.prepareStatement(sql);
 ResultSet rs=null;
 rs=pstmt.executeQuery();
 rs.next();
 out.print(rs.getString("name"));
 pool.freeConnection(con,pstmt,rs);
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글목록

등록된 댓글이 없습니다.


목록

Total 17건 1 페이지
온라인강의 목록
번호 제목
17
JSP .do 확장자의 의미 (write.2013-08-21)인기글  Hit.6456
16
JSP PreparedStatement와 Statement의 성능 (write.2012-10-09)인기글  Hit.5866
15
14
JSP substring사용법 (write.2012-09-27)인기글  Hit.4547
13
JSP split 사용법 (write.2012-09-27)인기글  Hit.4087
12
JSP out.write() 와 out.print() (write.2012-09-27)인기글  Hit.4168
11
JSP 폼 처리(POST) (write.2012-09-27)인기글  Hit.4117
10
9
8
JSP euc-kr 한글 깨짐 (write.2012-05-22)인기글  Hit.12990
7
6
JSP Struts 의 한글처리 (write.2012-05-22)인기글  Hit.5084
열람중
4
3
2
JSP JSP에서의 include (update.2012-10-09)인기글  Hit.5619
1
JSP 프로그램 강제종료 JSP return; (write.2009-01-31)인기글  Hit.13497
게시물 검색
 
 
상호: 해피정닷컴 대표:정창용 사업자등록번호:119-05-36414 (08394) 서울시 구로구 디지털로 242 한화비즈메트로1차 1502호
전화: 070-7600-3500 팩스:02-865-3528 개인정보관리:정창용 mail@happyjung.com 에스크로확인
개인정보취급방침
COPYRIGHT 2001~2017 해피정닷컴. All rights reserved. 부가통신사업신고:서울체신청-1217 통신판매신고:2014-서울구로-0074
 
모바일 버전으로 보기