从Tomcat dataSource获取连接时遇到问题。
以下是配置文件:
server.xml
<Resource name="jdbc/mssql" auth="Container"
type="javax.sql.DataSource" removeAbandoned="true"
removeAbandonedTimeout="30" maxActive="-1"
maxIdle="-1" maxWait="10000" username="xxx" password="xxx" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://xxx.xxx.xxx.xxx:1433;databaseName=XXX" />
context.xml
<ResourceLink global="jdbc/mssql" name="jdbc/mssql" type="javax.sql.DataSource" />
从我的应用程序代码:
InitialContext initContext = new InitialContext();
if(initContext == null) {
String message = "There was no context in tomcat server..";
throw new Exception(message);
}
DataSource datasourceLocal = null;
datasourceLocal = (DataSource)initContext.lookup("java:/comp/env/jdbc/mssql");
if(datasourceLocal == null){
String message = "Could not find the dataSource in tomcat server..";
throw new Exception(message);
}
else {
logger.info("ConnPool Success..");
}
Connection conn = datasourceLocal.getConnection();
我有2个数据库服务器(用server.xml
中的xxx.xxx.xxx.xxx替换IP),第一个工作正常,但是第二个工作正常,它只是挂在获取连接线上(我在这一行之前和之后加了一些痕迹。)