草庐IT

Hibernate-Validator

全部标签

java - hibernate 程序不终止

我写了一个简单的Hibernate程序,它似乎工作正常,数据被加载到数据库中,表被创建。但是,程序在调用commit()后不会终止。这是我正在使用的代码片段:SessionFactorysessionFactory=newConfiguration().configure().buildSessionFactory();Sessionsession=sessionFactory.openSession();session.beginTransaction();session.save(model);session.getTransaction().commit();为此,我使用MySQ

java - 如何使用 Spring、(JPA) Hibernate、MySQL 处理 Broken pipe 错误

我有一个使用SpringJPA(Hibernate)和MySQL在Tomcat中运行的Web应用程序。一段时间不活动后,我总是会遇到此异常:Causedby:javax.persistence.PersistenceException:org.hibernate.TransactionException:JDBCbegintransactionfailed:atorg.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1763)~[hibernate-entitymana

java - 更新 : could not execute statement, 时出现 Hibernate 错误 在 'index=1' 附近使用正确的语法

我正在使用带有Hibernate和MySQL的netbeans开发桌面应用程序。当我向数据库添加一条新记录时,它完全可以工作,但是当我尝试更新一个对象字段时,出现此错误:couldnotexecutestatementINFO:HHH000010:OnreleaseofbatchitstillcontainedJDBCstatementsJan17,20152:47:00PMorg.hibernate.engine.jdbc.spi.SqlExceptionHelper$StandardWarningHandlerlogWarningWARN:SQLWarningCode:1064,S

java - 如何查找/更改 hibernate 查询

我正在尝试修复由我的数据库上的Hibernate查询引起的错误,但我似乎无法找到该查询的来源。在启用sqllogonhibernate后,我找到了错误所在,但不知道如何修复。Hibernatequery(eclipselog)"updatestudents_classessetstudent_id=nullwherestudent_id=?"throwing:ERROR[org.hibernate.engine.jdbc.spi.SqlExceptionHelper](http-localhost-127.0.0.1-8080-2)Column'student_id'cannotben

java - Hibernate 5.1 和 Java 8 LocalDateTime

我已经切换到Java8和Hibernate5来克服无法在Hibernate中存储毫秒的问题。privateLocalDateTimedate=LocalDateTime.now();publicLocalDateTimegetDate(){returndate;}Maven依赖org.hibernatehibernate-core5.0.1.Finalorg.hibernatehibernate-java85.0.1.Final尽管如此,Hibernate仍将LocalDateTime对象存储为tinyblob。我错过了什么?我正在使用MySQL5.6.19据此HibernateIss

java - 如何注册 SQL 函数,以便您可以使用 JPA 和 Hibernate 在 JPQL 或 HQL 查询中调用它们

我想在我的HQL查询中使用一个自定义函数,我在我的数据库中注册了一个函数,这是我的函数的sql代码:BEGINDECLAREuser_id_varVARCHAR(64);SELECTe.usernameFROMusersewheree.id=30INTOuser_id_var;returnuser_id_var;END并将其注册为MysqlCustomDilect类:publicclassMysqlCustomDilectextendsMySQLDialect{publicMysqlCustomDilect(){super();registerFunction("getActiveUs

java - 如何使用 Hibernate Annotations 在 Lob/Clob/tinyblob 上添加索引

我有一个使用Hibernate映射到数据库的bean。我正在使用HibernateAnnotations来指示我想要的映射,并创建索引。彻底简化的代码如下所示。我遇到的问题是我的byte[]字段上的索引没有创建;特别是我的多字段索引sysUuid没有被创建(参见示例代码)。在Hibernate调试日志中,我什至没有看到创建索引的尝试!我想指出的是,uuid字段上的@Index注释也不会在数据库中生成索引。我知道如何使用MySQL手动创建索引:createindexsysuuidonpersons(system,`uuid`(8));有趣的特性是uuid需要转义(因为它是一个MySQL函

mysql - 加速 Hibernate 对象的创建?

我们使用Hibernate作为MySQL数据库之上的ORM层。我们有很多模型对象,其中一些非常大(就字段数等而言)。我们的一些查询需要从数据库中检索大量(如果不是全部)模型对象,以便对它们进行各种计算。我们启用了延迟加载,但在某些情况下,Hibernate仍然需要大量时间来填充对象。MySQL查询的执行时间非常快(几毫秒的数量级),但是Hibernate会花时间填充对象。有什么方法/模式/优化可以加速这个过程吗?谢谢。 最佳答案 一种方法是不填充实体,而是填充某种View对象。假设CustomerView具有适当的构造函数,您可以这

java - 更新到 3.6.5 后,Hibernate 将属性映射到 SQL 公式失败

我刚刚从3.3.0.GA更新到Hibernate3.6.5.Final,在XML映射属性上调用SQL公式时遇到了问题:我没有更改*.xml.hbm中的任何内容,也没有更改数据库设计。之前我的endDate计算得很好,我现在得到一个MySQLSyntaxErrorException:YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'this_.SECOND,(this_.quantity*60*60),this_.tra

mysql - 使用 Hibernate @SQLDelete 跨所有实体进行软删除

我们有一个相当复杂的数据模型,并且在MySQL之上使用Hibernate和SpringDataJPA。我们有一个基类,所有领域对象都扩展该基类以最小化样板代码。我希望能够仅使用此类在我们所有的域对象中添加软删除功能。但是,@SQLDelete需要子句中的表名:@SQLDelete(sql="UPDATE(table_name)SETdeleted='1'WHEREid=?")@Where(clause="deleted'1'")有没有人知道一种方法来泛化SQLDelete语句并允许扩展域对象填充它们自己的表名? 最佳答案 如果您使用