JNDI 연결 풀 돌파(Tomcat5.5의 관리 인터페이스를 통해 연결 풀 구성)
저자:Eve Cole
업데이트 시간:2009-07-03 16:56:20
JNDI 연결 풀 중단 - -
며칠간의 노력 끝에 마침내 연결 풀에 연결할 수 있게 되었습니다. 이와 관련하여 영웅들의 많은 게시물을 참조했습니다. 이제 여기에 지난 며칠 동안 발생한 몇 가지 문제를 적어보겠습니다.
1. tomcat_homecommon 아래에 3개의 jdbc 드라이버(필수)를 넣습니다. 이는 Microsoft 웹사이트에서 다운로드할 수 있습니다. 설치된 SQLSERVER2k의 기본 사용자 이름은 sa이고 비밀번호는 비어 있지만 비밀번호가 비어 있어도 상관 없습니다. . 비밀번호가 없다는 의미이므로 URL에 사용자 이름과 비밀번호를 정의해야 합니다. 인용할 수 없는 오류가 있는 경우 일반적으로 경로가 올바르게 작성되지 않았기 때문입니다. Tomcat의 경로는 tomcat_homewebapps이지만 5.5 .x를 사용하면 아래 방법을 따르십시오. 경로를 구성할 필요가 없으며 youwebappWEB-INFweb.xml에서 참조를 구성할 필요가 없습니다. tomcat5.5.x 버전의 server.xml 구성은 tomcat5.0의 구성과 다릅니다. tomcat5.5.x의 세 가지 구성 방법은 구성이 잘못된 경우 javax.naming.NameNotFoundException입니다. 이 컨텍스트 오류 방법에 바인딩되지 않았습니다. 1. 전역 데이터베이스 연결 풀
1. 관리 인터페이스를 통해 연결 풀을 구성하거나 tomcatconfserver.xml의 GlobalNamingResources에 직접 추가합니다.
<리소스 이름="jdbc/mydb" type="javax.sql.DataSource" 비밀번호="mypwd" driversClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" maxIdle="2" maxWait="5000" 유효성 검사Query="선택 1" 사용자 이름="sa" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb" maxActive="4"/>
2. tomcatwebappsmyappMETA-INFcontext.xml의 컨텍스트에 다음을 추가합니다.
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
그게 다야.
방법 2. 글로벌 데이터베이스 연결 풀
1. 위와 동일
2. tomcatconfcontext.xml의 컨텍스트에 다음을 추가합니다.
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
방법 3: 로컬 데이터베이스 연결 풀은 tomcatwebappsmyappsMETA-INFcontext.xml의 컨텍스트에만 추가하면 됩니다.
<리소스 이름="jdbc/mydb" type="javax.sql.DataSource" 비밀번호="mypwd" driversClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" maxIdle="2" maxWait="5000" 유효성 검사Query="선택 1" 사용자 이름="sa" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb" maxActive="4"/>
매개변수 설명:
DriveClassName: JDBC 드라이버 클래스의 전체 이름입니다.
maxActive: 연결 풀에서 동시에 할당할 수 있는 사용 가능한 최대 인스턴스 수입니다.
maxIdle: 연결 풀에서 동시에 유휴 상태일 수 있는 최대 연결 수입니다.
maxWait: 최대 시간 제한(밀리초);
비밀번호: 사용자 비밀번호;
url: JDBC에 대한 URL 연결;
사용자: 사용자 이름;
유효성 검사 쿼리: 풀에서 유휴 연결을 쿼리하는 데 사용됩니다.
위의 세 가지 방법은 모두 Tomcat 5.5.4에서 사용 가능합니다. 또한, SQL Server의 JDBC 드라이버는 Microsoft 홈페이지에서 다운로드한 SQL Server JDBC(sp3)입니다.
4. 오류 org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory([Microsoft][SQLServer 2000 Driver for JDBC]Error 확립 소켓.) 이것은 작은 문제입니다. 내 SQLSERVER2K 서비스가 manual 로 변경되었기 때문입니다. SQLSERVER2K는 시작할 때마다 수동으로 시작해야 하기 때문에 기억하지 못한 채 시작되기 때문에 일부 오류가 보고되므로 SQLSERVER2K를 자주 사용하는 경우에는 수동 시작으로 변경하지 않는 것이 가장 좋습니다.