728x90
반응형
예시





lib에 추가

<?xml version="1.0" encoding="UTF-8"?>
<!--
현재 프로젝트를 해석(실행)할 떄 알아야 하는 정보를 설정
<Resource></Resource> 애는 첫글자 반드시 R로 설정해야한다.
-driverClassName=: DBMS에 연결하기 위한 드라이버 클래스 경로
-url : DBMS에 연결하기 위한 경로
-maxtotal : 총 연결(Connection)의 수
-minIdle : 유휴 연결 (connection) 최소개수
-maxIdle : 유휴 연결 (Connection) 최대갯수
-maxWaitMillis : 연결이 모두 사용중일 경우의 대기 시간
-->
<Context>
<!-- DBCP를 수행할수 있는 자원(도구) 등록 -->
<Resource
name="jdbc/oracle"
type="javax.sql.DataSource"
auth="Container"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521:xe"
username="kh"
password="kh"
maxTotal="20"
minIdle="0"
maxIdle="5"
maxWaitMillis="3000"/>
</Context>
package home.beans;
import java.sql.Connection;
import java.sql.DriverManager;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public class JdbcUtils {
//연결 생성 (1) : 직접 연결을 수행하는 방법
//- 다수의 사용자가 몰릴 경우 연결 생성 시간이 과다하여 부하로 인한 오류발생
public static Connection connect(String username,String password) throws Exception{
Class.forName("oracle.jdbc.OracleDriver");
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", username, password);
return con;
}
//연결생성(2) : DBCP 라이브러리(업체)를 고용하는 방법
//-연결을 직접 수행하는 것이 아니라 연결을 관리 하는 업체를 두고 렌탈하는 방식
//-연결을 생성하는 시간이 줄어들어서 전체적인 성능과 안정성이 향상됨
//-설정 파일을 초기에 불러와야한다.
private static DataSource ds;
static {
//context.xml에 있는 "jdbc/oracle" 이라는 이름을 가진 자원의 참조 정보를 획득
//이름을 찾는 도구생성
try {
Context ctx= new InitialContext();
//ds=ctx를 이용해서 찾아낸 도구 정보;
//ds=ctx.lookup("경로+이름");
ds=(DataSource) ctx.lookup("java:comp/env/jdbc/oracle");
}catch(Exception e) {
System.err.println("DataSource생성 오류");
e.printStackTrace();
}
}
public static Connection connect2() throws Exception{
return ds.getConnection();
}
}
'[DBMS] > - Oracle' 카테고리의 다른 글
[Oracle]jdbc,beans,select (0) | 2022.05.31 |
---|---|
[Oracle]Jdbc,beans,delete (0) | 2022.05.31 |
[Oracle] jdbc,bean,update (0) | 2022.05.31 |
[Oracle] jdbc , beans (0) | 2022.05.31 |
[Oracle] jdbc (Select 원하는 항목 검사 ) (0) | 2022.05.31 |
댓글