hibernate笔记一之配置文件

来源:互联网 发布:淘宝规则2016 编辑:程序博客网 时间:2024/04/28 18:34

Hibernate


会使对数据据库的操作,变成一个面向对象的操作(如现在有一个User对象,现在只有调用Hibernate 直接插入一个对象到数据库中去,但是实际上是Hibernate自动生成了Sql 语句去操作数据库),是一个应用于Dao层的框架,所以我们要告诉Hibernate 我们的对象与数据库中表的射关系(ORM)ORM Object Relationnal Mapping 对象关系映射

  • transaction

    当事务提交了会把当前的线程的session 关闭,当再次调用getCurrentSession()时返回的session是一个新对象

  • hibernate.cfg.xml 配置文件
<property name="hbm2ddl.auto ">update</property>
update :如果数据库不存在表结构,就自动创建表结构,如是存在表结构,并且表结构与实体一致,那么不修改,如果表结构不一致,那么会修改表结构,会保留原有列。create: 无论是否数据库中存在表结构,每次都会重新创建表结构,(数据会丢失)create-drop:无论数据库存在表结构,每次启动hibernate 都会重新创建表结构,每执行完都会将表删除validate:不会创建表结构,也不会自动维护表结构。只负责校验表结构,如果表结构不一致,将会抛出异常

  • orm 配置文件
<generator class="" ></generaotr>

generator : 主键生成策略

1、increment 数据库自己生成主键,先从数据库中查询ID 最大值然后加一,
2、identity 依赖于数据的主键自增功能
3、sequence 依赖于数据中的序列功能(oracle)
4、hilo(这个永远用不到)hibernate 自己实现序列的算法,自己生成主键(hilo算法)
5、native 自行根据数据库判断,三选一,identity|sequence|hilo
6、uuid 生成三十二位的不重复随机字符串作为主键
7、assigned 自己指定主键的值,表的主键是自然主键时,使用assigned,(自然主键:当某一个字段满足、不为空、不重复、唯一时,就可以把这个字段设为自然主键)


  • property 节点中 type 属性

    表达该属性的类型可以用三种方式指定属性1、java 类型  java.lang.String 2、数据库类型指定 varchar3、Hibernate类型指定 string
0 0
原创粉丝点击