- 译者序
- 前言
- 本书怎么使用
- 本书排版字体约定
- 本书网站
- 致谢
- 第一部分 Hibernate 快速入门
- 第 1 章 安装和设置
- 第 2 章 映射简介
- 第 3 章 驾驭 Hibernate
- 第 4 章 集合与关联
- 第 5 章 更复杂的关联
- 第 6 章 自定义值类型
- 第 7 章 映射标注
- 第 8 章 条件查询
- 第 9 章 浅谈 HQL
- 第二部分 与其他工具的集成
- 第 10 章 将 Hibernate 连接到 MySQL
- 第 11 章 Hibernate 与 Eclipse:Hibernate Tools 使用实战
- 第 12 章 Maven 进阶
- 第 13 章 Spring 入门:Hibernate 与 Spring
- 第 14 章 画龙点睛:用 Stripes 集成 Spring 和 Hibernate
- 附录 A Hibernate 类型
- 附录 B Criteria API
- 附录 C Hibernate SQL 方言
- 附录 D Spring 事务支持
- 附录 E 参考资源
- 作者简介
- 封面介绍
连接到 MySQL
接下来,我们需要用一个 JDBC 驱动程序才能够连接到 MySQL。为了获取这个驱动程序,可以在 build.xml 中再添加一个依赖,如例 10-2 所示。对于几种不同的数据库,都有它们各自可供使用的驱动程序,这一点不错。这些不同的驱动程序不会冲突,因为 Hibernate 配置文件会指定最终使用哪个驱动程序(如果你对如何“手工”获取这种驱动程序感到好奇,那么可以从 MySQL 的官方网站( [1] )下载 Connector/J)。不过,如果你想避免以后 Hibernate 配置文件的读者会感到这部分有些混乱,则可以放心地删除<hsqldb>依赖和<db>构建目标,因为以后不再需要用 GUI(图形用户界面)查看 HSQLDB 中的数据了。
例 10-2:在 build.xml 中添加对 MySQL 驱动程序的项目依赖
……
<artifact:dependencies pathId="dependency.class.path">
<dependency groupId="hsqldb"artifactId="hsqldb"version="1.8.0.7"/>
<dependency groupId="mysql"artifactId="mysql-connector-java"
version="5.0.5"/>
<dependency groupId="org.hibernate"artifactId="hibernate"
version="3.2.5.ga">
……
说到配置文件,现在就应该编辑 hibernate.cfg.xml,以使用新的驱动程序和我们刚才创建的数据库了。例 10-3 演示了如何使用前面例 10-1 创建的数据来建立到我自己的 MySQL 数据库实例的连接。你需要根据你自己的数据库服务器、数据库以及你所选择的登录身份认证来调整这些数据库连接的配置值(如果你使用的是 MM.MySQL,则应该使用旧版的 MySQL JDBC 驱动程序,相应的驱动程序类名称应该是 com.mysql.jdbc.Driver)。
还需要删除配置文件底部的 jdbc.batch_size 属性。报告来自批处理内的实际问题,MySQL 驱动程序没有任何问题;与进程外(out-of-process)数据库相比,对于前面使用的 HSQLDB 驱动程序,如果关闭这个批处理选项,则会对性能造成很大的不良影响。
例 10-3:修改 hibernate.cfg.xml 以连接到新的 MySQL 数据库
<?xml version='1.0'encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!--SQL dialect-->
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<!--Database connection settings-->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property
name="connection.url">jdbc:mysql://localhost/notebook_db</property>
<property name="connection.username">jim</property>
<property name="connection.password">s3cret</property>
<property name="connection.shutdown">true</property>
……
如果不是在运行测试示例的机器上运行 MySQL,而是在另外的机器上运行 MySQL,则第三个属性定义必须能够反映出你的数据库服务器的名称。另外,connection.shutdown 配置属性也不再需要了,不过,放在那里也没什么影响。
[1] http://www.mysql.com/products/connector/j/.
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论