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

본문 바로가기
 
 
 
오늘 1,772
어제 1,939
최대 2,526
전체 3,251,317

최근 방문자

1215
964
1723
2217
1939
1772
18 19 20 21 22 23
비즈니스의 시작 비즈명함 ~ 가격, 품질, 배송 3가지 만족을 드리는 비즈명함 / 즉석명함 / 급행서비스 / 서울 전지역 수도권일부 3시간배송

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

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

페이지 정보

작성일2012-05-22 14:00 조회4,436회 댓글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 1,943건 1 페이지
온라인강의 목록
번호 제목
1943
1942
1941
1940
JSP utf-8 한글깨짐 (write.2017-03-20)  Hit.59
1939
1938
1937
1936
1935
그누보드 [G5] 게시물 순서 바꾸기 (write.2017-03-16)  Hit.106
1934
전자결제 [PayPal] PHP 결제연동 (write.2017-03-15)  Hit.106
1933
전자결제 [PayPal] ASP 결제 연동 (write.2017-03-15)  Hit.101
1932
1931
1930
JSP Service Temporary Unavailable! (write.2017-03-13)  Hit.120
1929
그누보드 [G5] [최신글] 한줄소식 (write.2016-02-19)인기글첨부파일  Hit.1638
1928
1927
1926
1925
1924
일반 FireFox 플러그인 (write.2015-02-28)인기글  Hit.2000
1923
1922
1921
1920
1919
게시물 검색
 
 
상호: 해피정닷컴 대표:정창용 사업자등록번호: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
 
모바일 버전으로 보기