知识大全 Hibernate session的方法的一些说明

Posted

篇首语:亦余心之所善兮,虽九死其犹未悔。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Hibernate session的方法的一些说明相关的知识,希望对你有一定的参考价值。

Hibernate session的方法的一些说明  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  用Hibernate肯定会频繁的用到session 下面就将Hibernate session中一些经常的用方法逐个的解释一下

  Transaction beginTransaction()

  开始一个工作单元并返回一个与之相关Transaction对象 最为事务的开始 通常在需要对数据库进行更改例如save update或delete时使用 在事务结束后需要调用Transaction的mit方法提交更改 该方法必须在Hibernate session关闭之前使用

  void flush() void clear()

  这两个方法通常在一起使用 由于Hibernate有缓存数据的功能 所以当我们要批量查询和批量插入时 会因为大量的缓存而导致内存溢出 所以我们可以在执行批量插入时插入一定数目的数据后调用flush()提交插入 然后调用clear()清空当前Hibernate session内的所有缓存 批量查询同理

  Connection close()

  关闭Hibernate session 同时清空所有的缓存

  Connection connection()

  获取当前Hibernate session使用的JDBC connection

  boolean contains(Object object)

  返回boolean值 判断一个实例是否与当前Hibernate session保持关联 即为持久化状态

  Query createQuery(String queryString)

  返回一个给定HQL语句的Query对象

  SQLQuery createSQLQuery(String queryString)

  返回一个用于执行原生SQL语句的SQLQuery对象

  void delete(Object object)

  删除与该对象关联的数据里内的一条记录 该对象可以是处于持久化状态也可以是处于瞬态但与数据库的记录有id联系 如果该对象的cascade属性为delete或all将会同时删除相关联的数据

  void delete(String entityName Object object)

  不太明白什么意思 占个位

  Connection disconnect()

  断开与session与当前JDBC的连接 如果连接有Hibernate管理 则将连接送回连接池 否则将送回给程序本身

  Object get(Class clazz Serializable id)

  根据指定的实体类以及实体id返回一个实体的实例 如果找不到记录则返回null

  Object get(String entityName Serializable id)

  同上 entity为实体的名字

  String getEntityName(Object object)

  返回一个持久化类的实体名

  Serializable getIdentifier(Object object)

  返回一个被session缓存的实体实例的id

  Query getNamedQuery(String queryName)

  返回一个在映射文件中定义的命名查询的query对象

  SessionFactory getSessionFactory()

  获取生成当前session的SessionFactory

  Transaction getTransaction()

  不说了 地球人都知道

  Object load(Class theClass Serializable id)

  Object load(String entityName Serializable id)

  和get方法一个效果 不同的是该方法在找不到对应记录时会抛出异常

  Serializable save(Object object)

  将一个实体实例持久化 返回该持久化实例的id 在持久化之前必须手动或自动的指派id

  void update(Object object)

  通过给定的分离状态的实例的id更新数据库记录 如果在持久化类中有相同的id则会抛出异常 如果这个实例cascade设置为save update或all是将同时更新所有关联的实例记录

cha138/Article/program/Java/ky/201311/28676

相关参考

知识大全 hibernate点滴

这几天在学习hibernate把一些碰到的问题给写下来以后避免犯重复的问题在进行Query类操作的时候session需在最后关闭例如try    Query&n

知识大全 hibernate大数据性能处理

   在项目中使用Hibernate进行大数据量的性能测试有一些总结   )在处理大数据量时会有大量的数据缓冲保存在Session的一级缓存

知识大全 Hibernate的基本组件

Hibernate的基本组件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Session接口 

知识大全 如何通过hibernate调用存储过程

用hibernate操作数据库可以通过获取的session值调用connection()方法获取connection从而调用存储过程java调用存储过程什么是存储过程?存储过程是指保存在数据库并在数据

知识大全 hibernate的查询策略有哪些

导航对象图从一个已经装载的对象开始通过像aUsergetAddress()getCity()的属性访问器方法访问相关的对象如果Session是打开的当你导航图时Hibernate会自动装载图的节点当对

知识大全 HIbernate的参数使用说明

HIbernate的参数使用说明  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!set节点有以下属性

知识大全 hibernate.cfg.xml配置文件的说明

     在Eclipse中利用HibernateSynchronizer插件进行数据库表的映射数据查询和获取数据可以节省大量时间加速Hibernat

知识大全 查看哪些session正在使用哪些回滚段

  系统环境操作系统Windows  数据库 OracleiR()forNT企业版  安装路径C:\\ORACLE    测试方法打开多个SQL*Plus窗口一些做一些需要回滚的操作如insertde

知识大全 session和cookie的最深刻理解

先说session   对SESSION的争论好象一直没有停止过不过幺麽能理解SESSION的人应该占以上但还是讲讲别嫌老~   有一些人赞

知识大全 不喜欢与人打交道的的适合什么工作

不喜欢与人打交道的的适合什么工作首先说明一下,任何事,都会与人打交道,只是有多有少。给您一下几点建议。1、您可以选择一些文职,如:做资料,您接触的只会是给您资料的人也就一个两个。2、写文学著作不太喜欢