展会信息港展会大全

hibernate连接sqlserver的问题
来源:互联网   发布日期:2016-02-17 09:43:33   浏览:1755次  

导读: 妈的 最近被老大叫去弄了下sqlserver 好嘛,很简单 ,hibernate改一下配置就行了嘛 弄了半天 找驱动包什么的 用sqlserver客户端连数据库是没问题了(吐槽下...

妈的 最近被老大叫去弄了下sqlserver

好嘛,很简单 ,hibernate改一下配置就行了嘛

弄了半天 找驱动包什么的

用sqlserver客户端连数据库是没问题了(吐槽下那个连接字符串,别人端口前面都是加:号 微软偏要弄个,号)

然后用myeclipse连上去映射实体也没问题(这个功能只是减少工作量,但是映射完还得自己手动改一改)

到最后用程序连的时候来问题了:

java.lang.AbstractMethodError:com.microsoft.jdbc.base.BaseDatabaseMetaData.getJDBCMajorVersion()I

网上搜了还有种情况:

java.lang.AbstractMethodError:com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKeys()Z

据说是microsoft(微软)提供的SqlServer数据库驱动存在bug。(注意:java代码调原驱动连接数据库是没有问题的,搭配hibernate会有此问题。----别人这么说的我没试过非hibernate方式,待验证) 需要换一种驱动连接,使用jtds这种驱动,就可以了。

配置改一下就ok:

net.sourceforge.jtds.jdbc.Driver

jdbc:jtds:sqlserver://数据库IP:端口;DatabaseName=xxx

jtds下载地址:http://sourceforge.net/projects/jtds/files/

顺便再说一下,最新版本的jtds可能需要jdk7的支持

如果你用的比较低的版本可能要下老一点的jtds

比如我用的jdk1.6我只能用jtds1.2 用1.3以后的都会报错:

java.lang.UnsupportedClassVersionError: net/sourceforge/jtds/jdbc/Driver :Unsupported major.minor version 51.0

出现这种错误就把jtds版本用低一点的就好了

至于网上说把jdk弄高版本,一般开发中不会轻易变更jdk版本的

赞助本站

人工智能实验室

相关热词: 开发 编程 android

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港