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详解(看图)

Hibernate框架

5.配置文件详解
    
    Hibernate.cfg.xml
        方言: 每个数据库方言各不相同.mySql应该配置最短那个.
        hbm2ddl: Hibernate建表策略
            create    : 每次启动Hibernate都会重新创建表结构
            create-drop :每次启动Hibernate都会重新创建表结构,Hibernate关闭前还会删除表结构
            update : 自动更新表结构.会保留原有结构和数据.
            validate:只验证/校验 表结构. 表结构不匹配,抛出异常.
    
    orm映射文件
    class: 表与类的对应
        id:     主键与OID的对应
            主键生成策略:
                    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