Hibernate配置和对象详解
来源:互联网 发布:excuse me网络用语缩写 编辑:程序博客网 时间:2024/06/04 01:18
Hibernate.cfg.xml常用配置
注:hibernate的前缀可以省略,即:hibernate.dialect等于dialect
session简介
- hibernate的执行流程:
- 操作数据库的对象
- session与connection是多对一的关系,每个session都有一个与之对应的connection,一个connection不同时刻可以供多个session使用
- session的方法:save()、update()、delete()、createQuery()等
transaction简介
- hibernate对数据的操作都是封装字事务当中,并且默认是非自动提交的方式,所以用session保存对象时,如果不开启事务,并且手动提交事务,对象并不会真正保存在数据库中
- 如果想让hibernate像jdbc那样自动提交事务,必须调用session对象的doWork()方法,获得jdbc的connection后,设置其为自动提交事务模式(通常不推荐这样做)
session.doWork(new Work(){
public void execute(Connection connection) throws SQLException{
connection.setAutoCommit(true);
}
})
session.save(对象实例);
session.flush();
session详解
- 如何获得session对象
- openSession
- getCurrentSession(单例模式)
- 如果使用getCurrentSession需要在hibernate.cfg.xml文件中进行配置:
- 如果是本地事务(jdbc事务):
hbm配置文件常用设置
<hibernate-mapping schema="schemaName" //设置模式名字 catalog="catalogName" //设置目录名称 default-cascade="cascade_style" //级联风格 default-access="field|property|ClassName" //访问策略 default-lazy="true|false" //加载策略 package="packagename" //设置默认包名/>
<class name="ClassName" //映射到哪个类 table="tableName" //映射到哪张表 batch-size="N" //抓取策略,一次抓取多少条记录 where="condition" //抓取条件 entity-name="EntityName" //支持一个实体类映射到多张表/>
<id //id表示主键 name="propertyName" //映射到哪个属性 type="typename" //数据类型 column="column_name"//数据库中字段名 length="length" //数据长度 <generaotr class="generatorClass"/> //主键生成策略/>
- 常见主键生成策略
0 0
- Hibernate配置和对象详解
- Hibernate框架(一)文件配置、核心API、对象状态详解
- Hibernate Criteria对象详解
- Hibernate Criteria对象详解
- Hibernate Criteria对象详解
- Hibernate Criteria对象详解
- Hibernate Criteria对象详解
- Hibernate:hibernate.cfg.xml 和 Spring配置中引入hibernate 的配置详解
- Hibernate-Configuration:配置对象
- 【Hibernate框架学习】:Hibernate进阶之详解Hibernate配置文件和对象关系映射配置文件
- hibernate+spring配置详解
- Hibernate配置详解
- hibernate的配置详解
- hibernate+spring 配置详解
- 《转》hibernate配置详解
- Hibernate配置属性详解
- Hibernate配置属性详解
- hibernate 配置参数详解
- Jquery遮罩层
- 史上最简单Android源码编译环境搭建方法(基于Docker)
- DisplayMatrix.density & DisplayMatrix.densityDpi & pixel
- Maven详解之仓库------本地仓库、远程仓库
- c++继承
- Hibernate配置和对象详解
- 【计算机视觉】【视频开发】智能视频分析中的光照强度突然变化的处理方法
- 30分钟掌握 C#6
- 洛谷1262 间谍网络 tarjan缩点
- UVA699
- unity 中对MD5的加密
- 硬件流控与软件流控
- 3.8学习总结
- 单链表的初始化,增删改查