달력

9

« 2020/9 »

 

 

DBCP  설정하기1 - 커넥션 풀 사용하기

·       context.xml 파일 작성하기

·       web.xml 파일 작성하기

·       연결 코딩

 

 

context.xml 파일 작성하기

/jspMain/WebContent/META-INF 폴더 경로에 context.xml파일을 작성합니다.

<Context>

<!-- 커넥션 설정 -->

<Resoure

auth="Container"

driverClassName="oracle.jdbc.driver.OracleDriver"

url="jdbc:oracle:thin:@localhost:1521:orcl"

username = "codelab10"

password = "oracle_11g"

name = "jdbc/Oracle11g"

type = "javax.sql.DataSource"

maxActive = "50"

maxWait = "1000"

/>

</Context>

<Context>

<Resource

   name="jdbc/OracleDB"

   auth="Container"

   type="javax.sql.DataSource"

   username="codelab"

   password="oracle_11g"

   driverClassName="oracle.jdbc.driver.OracleDriver"

   factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"

   url="jdbc:oracle:thin:@localhost:1521:ORCL"

   maxActive="500"

   maxIdle="100"/> 

</Context>

<Context>

<Resource

   name="jdbc/Oracle11g"

   auth="Container"

   type="javax.sql.DataSource"

   username="scott"

   password="oracle_11g"

   driverClassName="oracle.jdbc.driver.OracleDriver"

   factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"

   url="jdbc:oracle:thin:@127.0.0.1:1521:ORCL"

   maxActive="500"

   maxIdle="100"/> 

</Context>

 

 

 

web.xml 파일 작성하기

/jspMain/WebContent/WEB-INF/web.xml 파일 수정하기

아래의 내용을 <web-app></web-app>사이에 추가하면 됩니다.

<res-ref-name>jdbc/Oracle11g</res-ref-name>에서 jdbc/Oracle11g context.xml파일에서 지정한 리소스 이름(name = "jdbc/Oracle11g")과 일치해야 합니다.

 

 

/jspMain/WebContent/WEB-INF/web.xml

<resource-ref>

    <description>connectDBCP</description>

    <res-ref-name>jdbc/OracleDB</res-ref-name>

    <res-type>javax.sql.DataSource</res-type>

    <res-auth>Container</res-auth>

 </resource-ref>

<description>Oracle Development Datasource</description>

    <res-ref-name>jdbc/Oracle11g</res-ref-name>

    <res-type>javax.sql.DataSource</res-type>

    <res-auth>Container</res-auth>

 </resource-ref>

<resource-ref>

    <description>Oracle Development Datasource</description>

    <res-ref-name>jdbc/Oracle11g</res-ref-name>

    <res-type>oracle.jdbc.pool.OracleDataSource</res-type>

    <res-auth>Container</res-auth>

 </resource-ref>

 

 

 

연결 코딩

Context initCtx = new InitialContext(); 

Context envCtx = (Context) initCtx.lookup("java:comp/env");

DataSource ds = (DataSource)envCtx.lookup("jdbc/OracleDB");

conn = ds.getConnection();         

Context init = new InitialContext();

DataSource ds = (DataSource) init.lookup("java:comp/env/jdbc/OracleDB");

conn = ds.getConnection();

 

 

Posted by codedragon codedragon

댓글을 달아 주세요