day29_Hibernate复习

1.Hibernate框架

    功能:Dao层(持久层)框架,封装了JDBC。
    思想:整合了ORM思想,以面向对象的思想操作数据库。

2.Hibernate搭建步骤

    1> 导包
    2> 建表
    3> 创建实体(model)
    4> 填写Hibernate.cfg.xml配置文件
    5> 填写实体orm映射文件(元数据)
    6> 写代码

3.Hibernate 操作流程

    1> 加载配置文件
    2> 根据配置创建SessionFactory
    3> 根据工厂获得session
    4> 开启事务
    5> 操作数据库
    6> 关闭事务
    7> 释放资源

4.api详解(看图)

      

5.配置文件详解

    Hibernate.cfg.xml
        方言:每个数据库方言各不相同,MySql应该配置最短那个。
        hbm2ddl:Hibernate建表策略
            create:每次启动Hibernate都会重新创建表结构。
            create-drop:每次启动Hibernate都会重新创建表结构,Hibernate关闭前还会删除表结构。
            update:自动更新表结构,会保留原有结构和数据。
            validate:只验证/校验 表结构,表结构不匹配时抛出异常。

    orm映射文件(User.hbm.xml)
        class: 类与表的对应
            id:OID与主键的对应
            generator:主键生成策略
                increment:先查询表中的最大id. 然后+1,适合测试使用,不适合实际开发使用(存在线程并发问题)
                indentity:依赖数据库的主键自增,例如:mysql、sqlserver。
                sequence:依赖于数据库的序列,例如:Oracle。
                hilo:Hibernate自己实现序列算法(用不到)。
                native:三选一:indentity / sequence / hilo
                uuid:生成32位的随机字符串

                assigned:自然主键时,自己填入ID

         property
            name:实体属性
            column:表列名
            length:配置属性长度
            type:配置属性类型
            not-null:是否非空
            unque:是否唯一

         type
            数据库类型                        Java类型                        Hibernate类型
            varchar     =>         java.lang.String|String  =>             string
            int             =>         Integer                         =>             int
            ......                           ......                                                 ......

猜你喜欢

转载自www.cnblogs.com/chenmingjun/p/9285775.html