美文网首页程序员
Hibernate的使用(一)

Hibernate的使用(一)

作者: hddwsz | 来源:发表于2017-07-12 18:27 被阅读0次

    什么是Hibernate?

           开源的,轻量级的,内部实现了ORM思想的,封装了JDBC的持久层框架.那么什么是开源的,它指的是开放源代码;轻量级的,是因为它消耗的资源(内存)少,依赖的jar包少;内部实现了ORM思想指的是它不再关注sql语句的编写,只需操作实体类的属性和方法;封装了JDBC因此对比JDBC的效率会有所降低,但是Hibernate提供了一系列的优化手段保证查询效率.

    第一部分 Hibernate的入门

    这一部分用一句话概括:一个思想,两个映射,三个准备,七个步骤.

    一个思想:

           指的是ORM思想,是Object Relation Mapping的缩写(对象关系映射).

           ORM思想在Hibernate中有三个步骤:

                   (1)将实体类和数据库表映射起来;

                   (2)将类中的属性和表中的字段映射起来;

                   (3)使用配置文件将这些关系描述出来.

    两个映射:

           指的是描述实体类和数据库表的映射关系的xml文件,是搭建Hibernate运行环境的一个步骤,就要涉及马上要讲的三个准备.

    三个准备:    

             搭建Hibernate运行环境需要三个准备工作:

                     第一步,创建工程,导入jar包(可到http://sourceforge.net/projects/hibernate/files/hibernate-orm/5.0.7.Final/ 中下载);

                     第二步,根据表编写它的实体类和实体类映射文件,这里要注意的是映射文件的位置以及命名(位置:实体类所在的包下,命名:实体类名.hbm.xml);

    xml文件的编写首先要导入DTD约束,如图1

    图1

     然后将实体类和数据库表映射起来,使用的是class标签,如图2

    图2

      然后就是将类中的属性和表中的字段映射起来,这一涉及到配置主键和配置普通属性,配置主键使用id标签,配置普通属性使用property标签,如图3

    图3

    第三步,编写核心配置文件,这里需要配置数据库信息、Hibernate的配置信息以及映射文件的位置(位置:src下;命名:hibernate.cfg.xml).

    核心配置文件首先也要导入DTD约束,但和映射文件的约束不同,如图4

    图4

    然后就是就是编写数据库配置信息和hibernate配置信息,如图5

    图5

    在做完以上工作后就可以对数据库进行增删改查了!

    七个步骤:

            (1)加载配置文件:

                     Configuration cfg = new Configuration();

                     cfg.configure();

            (2)构建一个SessionFactory对象

                      SessionFactory  factory  =  cfg.buildSessionFactory();

            (3)打开一个新的session对象

                      Session session = sessionFactory.openSession();

            (4)开启事务,返回事务对象

                      Transaction tx = session.beginTransaction();

            (5)增删改查:使用session的save、delete、get/load方法进行CRUD(增删改查)操作

            (6)提交事务

                     tx.commit();

            (7)释放资源

                     session.close();

                     sessionFactory.close();

    这时我们可进一步抽取一个工具类HibernateUtils,如图6

    图6

    ------------未完待续---------

    相关文章

      网友评论

        本文标题:Hibernate的使用(一)

        本文链接:https://www.haomeiwen.com/subject/uxibhxtx.html