커넥션 풀은 was마다 제공하고 있습니다.
tomcat 도 was 이기 때문에 제공하고 있습니다.
또 어디서나(?) 쓸수 있는 common dbcp 도 있습니다. ( 아파치꺼~ )
커넥션풀에 대한 기본정보
커넥션풀(Connection Pool) - DBCP 예제
커넥션 풀이란 db와 연결하는 커넥션을 미리 생성해두고 풀에 저장해두었다 필요할때 꺼내쓰고, 사용후에는 다시 풀에 반환하는 기법을 말한다. (멀티쓰레드의 쓰레드풀과 유사하다.) 커넥션을 미리 생성해두기..
hsp1116.tistory.com
common DBCP VS Tomcat DBCP
https://okky.kr/article/271816
OKKY | 자카르타 common DBCP VS Tomcat DBCP 차이
제목 그대로 차이를 알고 싶습니다. 톰캣 org.apache.tomcat.dbcp.dbcp.BasicDataSource 자카르타 Commons DBCP org.apache.commons.dbcp.BasicDataSource 위처럼 패키지 이름이 다른데 실제로는 차이는 없는건지 구글검색을 해봤지만 영어라 무슨소린지 잘모르겠고... 일단 지금 제가 알고 있
okky.kr
Commons DBCP 이해하기
https://d2.naver.com/helloworld/5102792
일단 우리는 tomcat을 쓰니 tomcat 에 설정을 하도록 합니다~!
1. tomcat용 dbcp 다운로드
http://www.java2s.com/Code/Jar/t/Downloadtomcatdbcp7030jar.htm
Download tomcat-dbcp-7.0.30.jar : tomcat dbcp « t « Jar File Download
www.java2s.com
2. /WEB-INF/lib 에 해당 파일 복사
3. CATALINA_HOME/context.xml 에 데이터정보를 JNDI로 설정
<Resource
name="jdbc/mariadb"
auth="Container"
type="javax.sql.DataSource"
driverClassName="org.mariadb.jdbc.Driver"
url="jdbc:mariadb://localhost:3306/taisou"
username="taisou"
password="taisou"
maxActive="50"
maxWait="-1" />
이클립스에서 Server 프로젝트에 있는 context.xml 을 바로 수정!
4. 연결방법을 JNDI를 쓰는 방법으로 수정
Connection c = null;
try{
Context ctx = new InitialContext();
Context envContext = (Context) ctx.lookup("java:/comp/env");
DataSource dataFactory = (DataSource)envContext.lookup("jdbc/mariadb");
c = dataFactory.getConnection();
}catch(NamingException | SQLException e){
e.printStackTrace();
}
/*
try {
Class.forName("org.mariadb.jdbc.Driver");
c = DriverManager.getConnection(
"jdbc:mariadb://localhost:3306/taisou",
"taisou",
"taisou"
);
} catch (ClassNotFoundException | SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
*/
return c;
5. TestPage 로 잘됨을 확인!!