티스토리 뷰
public class DataBase
{
private static Connection m_conn = null;
private static DataBase s_Obj = new DataBase();
private DataBase()
{
if( s_Obj == null)
{
s_Obj = this;
}
}
public static DataBase getInstance()
{
return s_Obj;
}
//connection 반납
public Connection getConnection( String szDBUrl, String szUser, String szPass)
{
try
{
if( m_conn == null)
{
//String szDBUrl = "jdbc:oracle:thin:@" + m_szHost + ":" + m_szPort + ":" + m_szDBName;
Class.forName( "oracle.jdbc.driver.OracleDriver");
m_conn = DriverManager.getConnection( szDBUrl, szUser, szPass);
}
return m_conn;
}
catch( Exception e)
{
System.out.println( " @DB Connection Create Error");
e.printStackTrace();
return null;
}
}
public void closeConnection()
{
try
{
m_conn.close();
}
catch( Exception e)
{
System.out.println( " @Already Closed DB Connection");
}
}
}
DataBase 클래스의 생성자를 private 로 선언하여 자기 자신만 생성할 수 있도록 하고, static 으로 미리 생성해두면, 객체가 닫 하나만 존재하게 된다. 그리고 이 안에서 관리하는 connection 역시 유일하게 된다.
connection 을 여러개 관리하고 싶으면, pool 을 만들어 두어 미리 생성해 관리하는 방법도 고려해 볼 수 있다.. 이는 이미 오래전부터 쓰여오던 방식이라, 오픈된 소스가 많이 있다.
정리해두기위해 올린다.
'프로그래밍 > JAVA / JSP' 카테고리의 다른 글
[Java] DB 인스턴스 하나만 만들기 (0) | 2011.01.10 |
---|---|
[JSP] string 출력시 한글 안깨지게 하기. (1) | 2007.07.16 |
[JSP+MYSQL] JSP에서 Mysql DB 읽어오기 (0) | 2007.07.16 |
자바의 시작 hello java (0) | 2007.06.10 |
댓글
공지사항
- Total
- 214,285
- Today
- 0
- Yesterday
- 2
TAG
- A200
- 알파200
- 멘드라미
- 라이트스크라이브
- 서벨로
- 이명박
- HP 2710P
- 리눅스
- 게시판 설계
- 아파트공사현장
- lightscribe
- 강아지
- 스보
- 보리
- 말티즈
- 잡담
- 2710p
- 불법공사
- x61
- 보리보드
- 대도루피
- 평화의문
- CERVELO
- 스타일보고서
- 써벨로
- 세명대학교 교양
- 맛없는집
- W5700
- 꽃
- 400d