问题标签 [hibernate-session]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1145 浏览

java - 用hibernate读取数据不与数据库同步

我正在使用休眠与数据库进行交互。插入、删除、更新操作没有问题,因为它们由提交语句session.getTransaction.commit()结束。

但是,虽然selecting data,listing records 休眠返回先前显示的数据并且不显示所有新记录或所做的更新。

所以在问这个问题之前,我尝试(两周前)导航到类似的问题,但在应用所有建议时我没有找到答案。

(A) 启用二级缓存 (b) 增加隔离级别

这对我来说变得很奇怪,因为当我想更新最近插入的记录时,我得到以下信息。

这是我正在使用的一种选择方法!

我的休眠配置文件是这样的:

所以我很高兴提出两个问题:

我的方法有什么问题还是我的休眠配置有问题?

是什么阻止休眠与数据库同步以获取新插入的记录?

谢谢。

0 投票
1 回答
250 浏览

java - 在会话期间更改 Hibernate Session.FlushMode

我的应用程序使用FlushMode.AUTO. 对于特定的服务方法调用,我想更改 Hibernate Session。FlushModeFlushMode.COMMIT并恢复到FlushMode.AUTO方法完成时。

问题:- 在会话期间更改 FlushMode 是否有任何问题/危险?

在会话期间更改 FlushMode 的原因:- 我正在使用 Hibernate Interceptor Approach ( onFlushDirty) 来审核更改。使用 FlushMode.AUTO 时,会发生多个会话刷新(行为FlushMode.AUTO)。因此,因此onFlushDirty被多次调用导致重复审计。FlushMode我通过更改为COMMIT我期望进行审计的方法来解决上述问题。

0 投票
1 回答
3301 浏览

spring-mvc - 自定义唯一约束注解 Spring MVC

我正在尝试创建自定义注释来检查唯一字段值。例如检查唯一的电子邮件地址等。

但不能自动装配“customerDAO”对象。它抛出异常'org.springframework.web.util.NestedServletException:请求处理失败;嵌套异常是 javax.validation.ValidationException:isValid 调用期间出现意外异常。

我在哪里做错了?请建议。

客户.java

唯一的.java

UniqueConstraintValidator.java

CustomerDAO.java

CustomerDAOImpl.java

mvc-调度程序-servlet.xml

pom.xml

0 投票
0 回答
2116 浏览

java - Hibernate 如何从 session.get 查询生成 sql 字符串

我正在使用 Hibernate 4.2.4,我很想知道 Hibernate 如何将 session.get 调用转换为等效的 sql 查询,该查询最终用于从数据库中检索行。我不想在控制台中记录生成的 sql。我想在我的应用程序中使用相同的 sql 查询。像下面的东西。

我已经看到了 Criteria query -> How to get SQL from Hibernate Criteria API (*not* for logging) 的这个线程。
我想知道 session.get 类型查询是否存在类似的过程。

我还看到了这个线程->从休眠中获取 SQL 获取
与我的问题完全相同的问题,但是接受的解决方案谈到了获取统计信息,据我了解,这些统计信息仅考虑了已经执行的查询。另外,从统计数据中我能够捕获 hql/sql 查询,但不能捕获 session.get 查询。

我想知道即使在实际 session.get 被执行之前,用户是否有办法生成和使用 sql(可能通过与休眠相同的路径)。

0 投票
1 回答
373 浏览

java - ClassMetaData.getPropertyValue() 抛出 LazyInitializationException:无法初始化代理 - 没有会话

我正在尝试通过调用从类元数据中获取属性值

getPropertyValue(Object object , String propertyName , EntityMode entityMode)

但它正在抛出一个

org.hibernate.LazyInitializationException: could not initialize proxy - no Session例外,这是我的代码:

它正在打印第一个对象值,并且从第二次运行开始,它正在抛出异常。

0 投票
1 回答
188 浏览

java - 如何在春季管理休眠会话

我对会话关闭有疑问,在运行此应用程序期间会产生什么影响,以及如果这在生产中会怎样。

我在生产服务器中遇到了两个问题,它在应用程序使用期间消耗了大量内存,大约 800MB 才刚刚启动。

一段时间后,它会出现内存不足错误和服务器崩溃

我正在使用 tomcat 服务器来部署我的应用程序

我的代码是这个

如果我确实关闭了会话,那么延迟初始化会给出一个错误,因为会话已经关闭。

请帮我解决这个问题。我们如何在使用 spring 配置的 hibernate 中处理打开会话我使用的是 hibernate 3.6.1 和 spring 3.0.6。

0 投票
1 回答
744 浏览

hibernate - 插入第一条记录后 createSQLQuery(sql).executeUpdate() 不起作用

我正在调用下面的方法,需要通过存储过程将记录插入到表中。

在我的本地机器上,更新总是有效的。在服务器更新停止后插入一个

记录。它不打印任何异常。

我的方法

传递的 SQL 是

调用 SP_UPDATE_STATUS(NOW(),'value1',NOW(),'value1',1,'summary',)

0 投票
4 回答
11945 浏览

java - Spring @Async:LAZY 集合上的空休眠会话

我在@Async服务层方法上使用注释。

当我 EAGERLY 加载 @OneToMany 集合字段时一切正常,但是当我尝试访问 LAZY 加载的元素时,我发现 HibernateSessionImplementor对象session为空。这显然给了我一个例外:

这是我的收藏领域:

如何绑定休眠会话以便在@Async上下文中延迟加载我的对象?

编辑

这是我的 trancactionManager / entityManager 配置

0 投票
1 回答
979 浏览

java - 使用 Spring 配置手动打开休眠会话

我遇到的问题是我使用 Spring 为我的 Web 应用程序管理和加载休眠。我目前正在使用 OpenSessionInViewFilter。这在我查看应用程序时按预期工作,但当我尝试从非视图相关活动(例如 Quartz 任务或我创建的用于帮助完成某些任务的一些 Runnable 线程)访问休眠时,效果就不那么好了。这会导致延迟初始化异常并且没有会话可用异常发生。

这是我目前使用 Spring 管理 Hibernate 的方式

然后我配置扩展 HibernateDaoSupport 的 DAO 对象并将它们注入服务类

然后在我的应用程序中,myService 被注入到我的控制器类中,所以我使用它来访问我的 DAO。对于我的情况,虽然看起来我需要以其他方式访问我的 DAO(或服务最好)并手动打开和关闭我的休眠会话,因为我的服务类似乎只在查看会话期间打开。我不确定最好的方法来做到这一点。Spring 中已经存在所有休眠配置,所以我假设它只是一个问题或以某种方式调用它们。

0 投票
2 回答
1066 浏览

hibernate - Hibernate Session 是单线程的意味着什么?

Hibernate 文档说这代表org.hibernate.Session了一个单线程的工作单元。我知道工作单元是在数据库事务的上下文中使用的。当它说单线程时是什么意思?请帮助我理解这一点。