JDBC 커넥션 풀 설정 (이클립스 + WTP + Tomcat + MySql)

jsp와 db 를 연동하기 위한 방법인 커넥션 풀.
책마다 설정 방법이 다르게 나와 고생했다.
지금 보고 따라하고 있는 책이 JSP2.0 웹프로그래밍(삼양미디어) 이기 때문에 이 책을 중심으로 공부하고 있다.
환경은 jdk1.5, eclipse3.2, tomcat5.5, mysql5 다.
위 책은 약간의 끈기를 갖고 따라하면 쉽게 결과값을 볼 수 있도록 친절하게 되어 있지만, 이클립스 환경에 대한 설명은 부족하다. 인터넷을 보며 이클립스 환경으로 책의 내용을 확인할 수 있었지만 DBCP 커넥션 폴 설정은 정말 어려웠다.
책의 내용을 적용하면 org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null' 라는 오류를 뿌리고 DB에 접근해 결과값을 뿌려줘야 하는데 그렇게 하지 못한다.

사용자 삽입 이미지

db에 접근 못하고 이러구 있다.

책에 있는 방법은 이클립스와 연관시켜 돌린게 아닌 tomcat 독자적으로 돌렸을 경우 제대로 수행되는 예제 이다. 즉 server.xml 변경을 C:\apache-tomcat-5.5.23\conf 내의 server.xml 을 수정해 주는게 아닌 이클립스에서 설정한 톰캣의 server.xml을 수정해야 한다.

사용자 삽입 이미지

밑줄친 server.xml에 context 부분을 수정해 줘야 한다.

context을 책에 나온데로 수정해 준다. context는 자동으로 잡혀있으니 Logger와 Resource 부분을
책에 있는 소스를 넣어준다.

<Context docBase="weptest" path="/weptest" reloadable="true" source="org.eclipse.jst.j2ee.server:weptest">
       <Logger className = "org.apache.catalina.logger.FileLogger" prefix="localhost_JspTest_log." suffix=".txt" timestamp="true"/>
    <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"
    />      
</Context>
결국 server.xml을 위의 방법으로 해주고 나머지는 책의 방법을 그대로 해주면 된다.

사용자 삽입 이미지
결과가 제대로 보인다.

물론 commons-collections-3.2, commons-dbcp-1.2.2, commons-pool-1.3 를 구해서 넣어줘야 한다. (버전은 다를 수 있음, 밑에 파일 첨부 files.zip)

C:\Documents and Settings\Owner\workspace\weptest\WebContent\WEB-INF\lib (프로젝트명이 weptest 임) 위치에 넣어 줘야 한다.

항상 하는 말이지만 환경설정이 제일 짜증난다.

,