Hibernate的第一个程序
2016-09-25 17:35
302 查看
Hibernate是一个开源的对象关系映射框架,对JDBC进行非常轻量级的封装。它将POJO与数据表建立了映射关系,是一个全自动的ORM框架。
Hibernate可以自动生成SQL语句并且自动执行SQL,可以用面向对象思想来操纵数据库。
在开始第一个hibernate小程序之前我们有必要熟悉一下hibernate的五大对象。
Configuration: Configuration 类负责管理 Hibernate 的配置信息
SessionFactory:
1)针对单个数据库映射关系经过编译后的内存镜像,是线程安全的。
2)SessionFactory 对象一旦构造完毕,即被赋予特定的配置信息
3)SessionFactory是生成Session的工厂
4)构造 SessionFactory 很消耗资源,一般情况下一个应用中只初始化一个 SessionFactory 对象。
5)Hibernate4 新增了一个 ServiceRegistry 接口,所有基于 Hibernate 的配置或者服务都必须统一向这个 ServiceRegistry 注册后才能生效
Session:
1)Session 是应用程序与数据库之间交互操作的一个单线程对象,是 Hibernate 运作的中心,所有持久化对象必须在 session 的管理下才可以进行持久化操作。此对象的生命周期很短。Session 对象有一个一级缓存,显式执行 flush 之前,所有的持久层操作的数据都缓存在 session 对象处。相当于 JDBC 中的 Connection。
2)持久化类与 Session 关联起来后就具有了持久化的能力。
Transaction:
允许应用程序定义工作单位,同时保持底层事务实现的抽象。
Criteria:
criteria是通过组合criteria对象检索实体的一个简化的接口,session是一个标准的工厂Criteria实例通常是通过工厂的方法来限制。
上面对hibernate和其常用对象做了一个简单的介绍,下面就开始我们的第一个小程序吧。
一、hibernate开发环境准备
1、新建一个web工程,将…….\hibernate-release-4.2.4.Final\lib\required下面的所有jar包导入到web工程lib目录下。
2、加入数据库驱动包,我这里用的数据库是mysql驱动包是:
mysql-connector-java-5.1.7-bin.jar
二、开始编写第一个hibernate程序
1、新建hibernate.cfg.xml文件并编写其基本信息(主要是配置sessionFactory,相当于connection,起到链接数据库的作用)
2、在mysql数据库客户端新建一个数据表
3、编写一个实体类,该实体类属性与数据表中的字段名或者别名相映射
4、新建实体类的数据库映射文件XXXX.hbm.xml
5、将实体类的数据库映射文件引入到hibernate配置文件中
6、新建一个测试类,如下
运行结果如下:
Hibernate可以自动生成SQL语句并且自动执行SQL,可以用面向对象思想来操纵数据库。
在开始第一个hibernate小程序之前我们有必要熟悉一下hibernate的五大对象。
Configuration: Configuration 类负责管理 Hibernate 的配置信息
SessionFactory:
1)针对单个数据库映射关系经过编译后的内存镜像,是线程安全的。
2)SessionFactory 对象一旦构造完毕,即被赋予特定的配置信息
3)SessionFactory是生成Session的工厂
4)构造 SessionFactory 很消耗资源,一般情况下一个应用中只初始化一个 SessionFactory 对象。
5)Hibernate4 新增了一个 ServiceRegistry 接口,所有基于 Hibernate 的配置或者服务都必须统一向这个 ServiceRegistry 注册后才能生效
Session:
1)Session 是应用程序与数据库之间交互操作的一个单线程对象,是 Hibernate 运作的中心,所有持久化对象必须在 session 的管理下才可以进行持久化操作。此对象的生命周期很短。Session 对象有一个一级缓存,显式执行 flush 之前,所有的持久层操作的数据都缓存在 session 对象处。相当于 JDBC 中的 Connection。
2)持久化类与 Session 关联起来后就具有了持久化的能力。
Transaction:
允许应用程序定义工作单位,同时保持底层事务实现的抽象。
Criteria:
criteria是通过组合criteria对象检索实体的一个简化的接口,session是一个标准的工厂Criteria实例通常是通过工厂的方法来限制。
上面对hibernate和其常用对象做了一个简单的介绍,下面就开始我们的第一个小程序吧。
一、hibernate开发环境准备
1、新建一个web工程,将…….\hibernate-release-4.2.4.Final\lib\required下面的所有jar包导入到web工程lib目录下。
2、加入数据库驱动包,我这里用的数据库是mysql驱动包是:
mysql-connector-java-5.1.7-bin.jar
二、开始编写第一个hibernate程序
1、新建hibernate.cfg.xml文件并编写其基本信息(主要是配置sessionFactory,相当于connection,起到链接数据库的作用)
2、在mysql数据库客户端新建一个数据表
3、编写一个实体类,该实体类属性与数据表中的字段名或者别名相映射
4、新建实体类的数据库映射文件XXXX.hbm.xml
5、将实体类的数据库映射文件引入到hibernate配置文件中
6、新建一个测试类,如下
package com.wxf.hibernate.test; import java.util.UUID; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.hibernate.service.ServiceRegistry; import org.hibernate.service.ServiceRegistryBuilder; import org.junit.Test; import com.wxf.hibernate.entity.Student; public class HelloworldTest { @Test public void test() { //1.创建一个SessiionFactory对象 SessionFactory sessionFactory=null; //1).创建Configuration对象:对应hibernate的基本信息和对象关系映射信息 Configuration configuration=new Configuration().configure(); //2).创建一个ServiceRegistry对象:hibernate的任何配置和服务都需要在该对象中注册后才能有效 ServiceRegistry serviceRegistry= new ServiceRegistryBuilder().applySettings(configuration.getProperties()) .buildServiceRegistry(); //3).基于以上几个对象创建SessionFactory对象 sessionFactory=configuration.buildSessionFactory(serviceRegistry); //2.创建一个Session对象 Session session=sessionFactory.openSession(); //3.开启事务 Transaction transaction=session.beginTransaction(); //4.执行操作 Student student=new Student(UUID.randomUUID().toString(),"wangxiaofei",22,"male","13190241"); session.save(student); //5.提交事务 transaction.commit(); //6.关闭Session对象 session.close(); //7.关闭SessionFactory对象 sessionFactory.close(); } }
运行结果如下:
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- 数据库链接字符串查询网站
- DB2实例管理
- DB2实例管理
- 保障MySQL数据安全的14个最佳方法
- mysql问答汇集
- 第三章 数据库备份和还原
- 创建一个空的IBM DB2 ECO数据库的方法
- Access 2000 数据库 80 万记录通用快速分页类
- 开通一个数据库失败的原因的和解决办法
- 一个简单的asp数据库操作类
- CentOS下DB2数据库安装过程详解
- EasyASP v1.5发布(包含数据库操作类,原clsDbCtrl.asp)第1/2页
- sql2008 还原数据库解决方案
- Oracle 数据库自动存储管理-安装配置
- Oracle数据库执行脚本常用命令小结
- Oracle 数据库 临时数据的处理方法
- 数据库分页查询语句数据库查询
- 插件管理框架 for Delphi(一)