Hibernate基础之配置文件和session
来源:互联网 发布:淘宝详情页下载 编辑:程序博客网 时间:2024/05/21 13:37
1.hibernate.cfg.xml常用配置
1.1.常用的属性
2.Session
2.1.hibernate程序的执行流程
2.2.不建议使用jdbc的connection操作数据库,而是通过session对象操作数据库。
2.3.session可以理解为操作数据库的对象,每个session都有一个与之对应的connection对象,一个connection对象不同时刻可以供多个session使用。
2.4.session的各种方法:save()、update()、delete()、createQuery()等
3.transaction(事物)
3.1.hibernate事物需要主动提交,也可以调用session的doWork()方法,方法传入Work接口的匿名实现类的实例(在实现接口Work的方法execute中实现自动提交)。
4.session的详解
4.1.如何获取session对象
4.1.1.openSession
4.1.2.getCurrentSession
1)如果是第二种方法需要在hibernate.cfg.xml中进行配置:
如果是本地事物(jdbc事物):
<property name=”hibernate_current_session_context_class”>thread</property>
如果是全局事物(jta事物):
<property name=”hibernate_current_session_context_class”>jta</property>
4.2.openSession和geCurrentSession的区别
4.2.1.getCurrentSession在事物提交或者回滚后会自动关闭,而openSession需要手动关闭。如果使用openSession而没有手动关闭,多次连接后会导致连接池溢出的情况。
4.2.2.openSession每次使用都会创建新的session对象,而getCurrentSession则使用已存在的session对象。
5.hbm配置(对象-关系映射文档)
5.1.hibernate-mapping标签常用属性
<hibernate-mapping schema = "schemaName" catalog = "catalogName" default-cascade = "cascade_style" //联级的风格 default-access = "field|property|ClassName" //访问策略 defalut-lazy = "true|false" //加载策略 package = packagename/>
5.2.class标签常用属性
<class name = "ClassName" table = "tableName" batch-size = "N" where = "condition" entity-name = "EntityName"/>
5.3.id标签(主键)常用属性
<id name = "propertyName" type = "typename"> <column = "column_name"/> <length = "length"/> <generator class = "generatorClass" /></id>
5.3.1.主键生成策略
- Hibernate基础之配置文件和session
- Hibernate之SessionFactory和Session
- hibernate之SessionFactory和Session
- hibernate 配置文件基础
- Hibernate配置文件基础配置
- Hibernate基础配置文件
- 【Hibernate框架学习】:Hibernate进阶之详解Hibernate配置文件和对象关系映射配置文件
- Hibernate配置文件之主配置文件
- hibernate配置文件和基础概念,三种状态
- Hibernate基础:快速入门(3):SessionFactory和Session
- Hibernate之配置文件
- Hibernate之配置文件
- hibernate之配置文件
- Hibernate开发之配置文件
- Hibernate 之 session
- Hibernate之session
- Hibernate之session
- Hibernate之Session.flush()
- STL_算法(25)_逆转和旋转 revers() 、reverse_copy()、rotate()、rotate_copy()、
- Swift之cannot load underlying module for ‘***’
- 关于iOS Tabbar的一些设置
- Android ImageView 图片等比缩放问题
- 汇总少了退款汇总 多了一笔支付汇总 很可能是因为商户退款配置的是正交易权限(配置的问题)
- Hibernate基础之配置文件和session
- CentOS7 搭建LVS+keepalived负载均衡(二)
- 【深入学习ReactNative】React Native简介和概述
- 选择年月日的方法
- 从浅到深,数据分析人的学习书籍!
- APBackup数据自动备份软件v3.9无限制特别版
- (15)HTML5-分辨率检测
- Android实现网络下载图片保存到SD卡的照片文件夹
- (转载)css单位px,em,rem,vw,vh,vmax,vmin