我有一个可与SQL Server 2008 R2一起使用的Java Hibernate项目配置,现在具有新的OS 8.1(来自7)和SQL Server2012(快速),我无法连接到SQL Server。
自从语法上与2008R2一起使用以来,在语法上正确的相关配置:
datasource.properties
jdbc.driverClassName=net.sourceforge.jtds.jdbc.Driver
jdbc.url=jdbc:jtds:sqlserver://localhost:1433/dbname;instance=SQLEXPRESS
jdbc.username=auser
jdbc.password=xyz
我试过两种org.hibernate.dialect.SQLServerDialect在2008 R2中使用过的方言。
hibernate.hbm2ddl.auto=create-drop
hibernate.dialect=org.hibernate.dialect.SQLServerDialect
#hibernate.dialect=org.hibernate.dialect.SQLServer2012Dialect
hibernate.show_sql=true
springConfiguration.xml
SQL Server 2012 已安装了混合模式身份验证,并且SQL Server Management
Studio的连接没有问题(使用或不使用实例名称)。
我已经更新了SQL Server Network Configuration的SQLEXPRESS。
SQLEXPRESS的协议:
TCP/IP Enabled 以及所有的TCP/IP Properties - TCP Port1433。
我尝试禁用Windows防火墙只是为了测试它是否在起作用,但是会导致相同的错误。
我最终添加了防火墙规则,并按照这篇出色的配置SQL Express
2012接受远程连接文章中的一些步骤进行操作。
错误信息:
Caused by: java.lang.AbstractMethodError
at net.sourceforge.jtds.jdbc.JtdsConnection.isValid(JtdsConnection.java:2833)