* Connection Pool 사용 목적
커넥션풀(Connection Pool)의 개요
객체의 생성작업은 많은 비용을 요구
데이터베이스 커넥션은 데이터베이스에 한번 연결하기 위한 작업
작업들이 매번 새로운 데이터베이스 연결에 대한 요청이 들어올 때 마다 수행해야 한다면 많은 부담
커넥션 풀(connection pools)은 끊임없이 생성되는 커넥션(connection)의 문제 해결이 목적.
* Connection Pool 처리 과정
커넥션 풀 처리과정
* Connection Pool 을 사용하기위한 3가지 파일
- commons-collections-3.1.zip
- commons-dbcp-1.2.1.zip
- commons-pool-1.2.zip
위파일을 압축해제후 \웹어플리케이션 폴더\WEB-INF\lib폴더 로 위치.
수정할 2가지 톰캣설정파일
* server.xml
* web.xml
server.xml 파일 편집
1)
<GlobalNamingResources>
</GlobalNamingResources>태그 안에
<Resource>태그기술
* ex)
<Resource name="jdbc/jsptest"
auth="Container" type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
loginTimeout="10" maxWait="5000"
username="jspid" password="jsppass"
testOnBorrow="true"
url="jdbc:mysql://localhost:3306/jsptest"
/>
2)
<Host>
</Host>태그 안에
<Context>태그기술
* ex)
<Context path="/study" docBase=“...\webapps\study" debug="1" crossContext="true">
<Resource name="jdbc/jsptest" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
loginTimeout="10" maxWait="5000"
username="jspid" 398 password="jsppass"
testOnBorrow="true"
url="jdbc:mysql://localhost:3306/jsptest" />
</Context>
web.xml 파일 편집
<resource-ref>태그를 기술
* ex)
<resource-ref>
<description>jsptest db</description>
<res-ref-name>jdbc/jsptest</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>