Spring 到 MS SQL 服务器命名实例的数据源连接

Spring datasource connection to MS SQL Server named instance

尝试在我的 Spring 配置中使用 JTDS 驱动程序创建与 MS SQL 服务器命名实例的数据源连接时出现错误。

我的 spring 数据源配置是:

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="${db.driver}" />
    <property name="url" value="${db.jdbcurl}" />
    <property name="username" value="${db.username}" />
    <property name="password" value="${db.password}" />
</bean>

和db.properties是:

db.driver=net.sourceforge.jtds.jdbc.Driver
db.jdbcurl=jdbc:jtds:sqlserver://SQL_SERVER_HOSTNAME/TEST2012:1433/TESTDB;
db.username=DB_UserName
db.password=DB_Password

在上面的属性文件中,TEST2012 是 SQL 服务器的一个实例,TESTDB 是命名实例上的数据库。

抛出以下异常:

ERROR: HHH000319: Could not get database metadata
java.sql.SQLException: No suitable driver found for jdbc:jtds:sqlserver://SQL_SERVER_HOSTNAME/TEST2012:1433/TESTDB
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:153)
    at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:144)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:155)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:120)

如有任何建议,我们将不胜感激。

jTDS 需要通过 property:

指定命名实例
jdbc:jtds:sqlserver://SQL_SERVER_HOSTNAME:1433/TESTDB?instance=TEST2012