刚刚我们讲过了Hibernate框架的概述,即他是一个ORM(将Java对象和数据库中的数据映射起来,具体采用元数据的xml的方式来描述这种映射关系)的持久化(将Java对象转换成数据库的数据保存起来或者将数据库中的数据从数据库中加载到JVM的内存中)的框架。相对于Hibernate,Mybatis灵活度高(所以对SQL要求高,开发速度就慢),执行速度快。讲完了Hibernate的概述,接下来我们来简单的说一下Hibernate的HelloWorld的程序。
Hibernate的HelloWorld程序最终要达到的业务功能是:通过执行Java程序,将Java对象以数据的形式保存在数据库中的一张表格中,并且自动的创建这张在数据库中本来没有的表格。
1.搭建Hibernate的环境
① 导入必要的jar包:至少8个和一个数据库驱动的jar包
② 创建一个Hibernate的总的配置文件:hibernate.cfg.xml。在这个Hibernate的总的配置文件中,我们目前需要配置的内容包括以下,需要注意的是属性内容都是使用<property>标签来完成,并且其属性名称都必须有特定的名称:
连接数据库的四个基本信息:username password driver-class url 。
Hibernate的方言dialect,讲明HIbernate在操作哪一种数据库,从而使用哪一种数据库语言。
show_sql,指定Hibernate在操作数据库的时候是否在控制台打印SQL
format_sql:指定Hibernate要格式化SQL
hbm2ddl.auto:指定Hibernate操作数据库的方式
配置将hbm.xml文件加载到cfg.xml文件当中
③ 创建一个用于持久化的类,就是一个普通的Java类
④ 创建这个类的关系映射文件
在这个类上直接new一个:类名.hbm.xml的文件。这个文件中指明哪个类与哪个表对应,哪个属性和哪个列名对应。其中比较特殊的是id这个标签指明了在数据库中的默认主键,并在其中声明主键生成的方式,generator。
2.通过Hibernate的API指定出访问数据库的代码
① 创建一个SessionFactory对象
② 创建一个Session对象
③ 开启事务
④ 执行保存业务
⑤ 提交事务
⑥ 关闭事务
⑦ 关闭Session
⑧ 关闭SessionFactory