Hibernate是面向Java环境的对象/关系数据库映射工具,管理Java应用和数据库之间的映射关系,提供数据查询和获取数据的方法,能够大幅减小使用JDBC处理数据持久化的时间。html
使用Eclipse自动工具,Hibernate的用户比较简单,步骤以下:java
一、Eclipse建立动态网页项目sql
在MS SQL Server的pubs数据库中建立数据表t_info,SQL代码以下:数据库
use pubs; create table t_info ( Id integer not null primary key, message varchar(50) not null )
二、建立对数据库的链接eclipse
在使用Hibernate进行开发以前,须要一个可以访问的Database Explorer链接配置。选择菜单window-->Show View-->Data Source Exploreride
选择Database Connections,右键new工具
点击nextsqlserver
初次使用Hibernate链接SQL Server2000,新建驱动定义,提示Unable to locate JAR/zip in file system as specified by the driver definition: msbase.jar.测试
这里须要安装SQL Server2000对应的JDBC驱动ui
首先:查看SQL Server2000的具体版本信息
在SQL 查询分析器中执行SQL脚本:Select @@Version
查询结果以下:
Microsoft SQL Server 2000 - 8.00.194 (Intel X86) Aug 6 2000 00:57:48 Copyright (c) 1988-2000 Microsoft Corporation Personal Edition on Windows NT 5.1 (Build 2600: Service Pack 3)
而后:下载对应版本的驱动:
下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=21599
解压zip包,因为当前开发环境为jre7,所以选用sqljdbc4.具体如何使用能够查看帮助,里面详细介绍了:C:\Program Files\Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\chs\help\default.htm
导入驱动库文件
设置数据库链接信息
接下来测试链接是否成功
链接失败,提示java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
初步分析,缘由应该是驱动未正确识别,经过检查驱动定义中Driver Class写错了:
当前Eclipse传教数据链接的Driver Class默认值是:com.microsoft.jdbc.sqlserver.SQLServerDriver
从SQL Server JDBC帮助中能够看到,这里应该是:com.microsoft.sqlserver.jdbc.SQLServerDriver
修改Driver Class后,从新测试链接:提示ping fail,具体信息以下:
java.lang.Exception: Connection failed with unspecified error.
at org.eclipse.datatools.connectivity.DriverConnectionBase.internalCreateConnection(DriverConnectionBase.java:110)
at org.eclipse.datatools.connectivity.DriverConnectionBase.open(DriverConnectionBase.java:54)
at org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.open(JDBCConnection.java:96)
at org.eclipse.datatools.enablement.msft.internal.sqlserver.connection.JDBCSQLServerConnectionFactory.createConnection(JDBCSQLServerConnectionFactory.java:27)
at org.eclipse.datatools.connectivity.internal.ConnectionFactoryProvider.createConnection(ConnectionFactoryProvider.java:83)
at org.eclipse.datatools.connectivity.internal.ConnectionProfile.createConnection(ConnectionProfile.java:359)
at org.eclipse.datatools.connectivity.ui.PingJob.createTestConnection(PingJob.java:76)
at org.eclipse.datatools.connectivity.ui.PingJob.run(PingJob.java:59)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
参考资料:
http://blog.csdn.net/jimmy609/article/details/12560381;http://www.cnblogs.com/qixin622/archive/2009/07/02/1515529.html