2.1开发步骤

    2.1.1创建数据库和表

    2.1.2创建对应实体类

    2.1.3导入Hibernate的jar包

        1.外层的hibernate3.jar
            hibernate3.jar

        2.lib\required 里面的所有jar包
            antlr-2.7.6.jar
            commons-collections-3.1.jar
            dom4j-1.6.1.jar
            javassist-3.9.0.GA.jar
            jta-1.1.jar
            slf4j-api-1.5.8.jar

        3.other
            log4j-1.2.16.jar
            slf4j-log4j12-1.6.1.jar



    2.1.4编写核心配置文件hibernate.cfg.xml
        各项配置信息可参考project\etc里面的文件


    2.1.5编写映射文件 *.hbm.xml User.hbm.xml

    2.1.6使用Hibernate API进行开发

        HibernateUtil.java工具类

        Test.java






2.2对象的三种状态

Hibernate规定对象具备三种状态,瞬时状态,持久状态,脱管状态
瞬时状态:transient,session没有缓存对象,数据库也没有对应记录,OID没有值
持久状态:persistent,session有缓存对象,数据库有对应的记录,OID有值
脱管状态:detached,session没有缓存对象,数据库也有记录,OID有值

2.3主键生成策略

1.increment:由Hibernate以递增的方式生成
2.identity:由底层数据库的自增主键生成机制产生,要求底层数据库支持自增字段类型,如MySQL的auto_increment和SQL Server的identity
3.sequence:由底层数据库的序列生成机制产生,比如Oracle的序列
4.native:根据底层数据库对自动生成标识符的支持能力来智能选择
5.assigned:由程序自己来指定