草庐IT

Hibernate

全部标签

java - 有没有办法阻止 Hibernate 破坏 @Where 注释中的 boolean 文字?

我想在Hibernate中使用@Where注释来删除已被该对象的boolean属性标记为“已删除”的对象。例如,以下应防止Hibernate加载任何已删除的地址:@OneToMany(mappedBy="contact")@Where(clause="deleted=FALSE")privateSetaddresses;但是,当我使用像deleted=FALSE这样的子句时,Hibernate会通过在boolean文字前加上表名来破坏boolean文字,这会导致查询失败。例如:select...fromaddressaddress0_where(address0_.deleted=ad

java - 已删除软锁定缓存条目。失衡的锁定/解锁序列?

我正在使用java1.6、spring2.5、hibernate3.3.1和ehcache2.6.0。程序连接到两个数据库。有两种ehcache配置,但在本例中只使用一种。在批处理结束时,程序返回此错误:2012-10-2315:44:43,406ERROR(AbstractReadWriteEhcacheAccessStrategy.java:159)-Cachedao.data.MyObjectKeydao.data.MyObject#28Lockable:nullAsoft-lockedcacheentrywasremovedalready.Outofbalancelock/un

java - 同一个类上注解Entity和Component是不是错了

将来自spring@Component和JPA@Entity的注释放在同一个类上是错误的想法吗?为什么需要它是在JSF页面上使用这个类,它还描述了表结构。原因是为了避免将实体对象映射到将成为表示层的某个值对象。这是一些反模式吗?你有更好的解决方案吗? 最佳答案 Isitwrongideatoputannotationfromspring@ComponentandJPA@Entityonthesameclass.这是Controller和模型的紧耦合。WhyItisneededistousethisclassonJSFpageanda

java - 执行加载命令时出错 : org. hibernate.exception.SQLGrammarException: 无法在线程 "main"中提取 ResultSet 异常

我正在尝试设置一个小的JPA工作示例,但是当我运行代码时出现以下错误:importjavax.persistence.EntityManager;importjavax.persistence.EntityManagerFactory;importjavax.persistence.Persistence;importencje.Klient;importencje.Zamowienie;publicclassSzkolenieJPA{publicstaticvoidmain(String[]args){EntityManagerFactoryfabryka=Persistence.c

java - 在 Hibernate 中使用 "ON clause"获取连接的替代方法

给定以下RDBMS中的域模型,该模型使用Hibernate映射到Java对象。┌─────────┐┌─────────────┐│Project│10..n│UserSetting│├─────────┼------------┼─────────────┤│name││username│└─────────┘│favorite│└─────────────┘用户可以将项目标记为最喜欢的项目,这反射(reflect)在关联的(可选)UserSetting条目中。如果用户没有标记项目,则数据库中没有UserSetting条目,这意味着该项目不受欢迎。将UserSetting视为“稀疏”

java - Persistence.createEntityManagerFactory() 在哪里寻找持久性单元?

我正在使用eclipse。我正在尝试调试未能找到确实位于我的eclipse项目目录结构中的持久性单元。EntityManagerFactoryjavax.persistence.Persistence.createEntityManagerFactory(StringpersistenceUnitName,Mapproperties)在哪里寻找持久化单元?当我问它看起来在哪里时,我的意思是可以搜索的所有可能资源,包括eclipse配置、persistence.xml中的属性(如果找到文件)、包含的JAR搜索的资源等。要探索它是如何工作的,我正在通过右键单击位于eclipse项目的根目录

java - hibernate 映射 : ignore a super class field

我有一个A类和B类publicclassA{intf1;intf2;intf2;}publicclassBextendsA{}我的问题是如何忽略映射到B的表中的字段,例如“f2”? 最佳答案 假设我对您的帖子所做的编辑获得批准,我将尝试回答。在下面的代码中,我忽略了类A中的字段f2,即使用AttributeOverride的B的父类(superclass)。@Entity@AttributeOverride(name="f2",column=@Column(name="f2_col",insertable=false,updatab

java - 从4.3.11.Final版本切换到5.0.1.Final导致编译报错

我正在尝试升级我的Hibernate版本org.hibernatehibernate-core4.3.11.Final到org.hibernatehibernate-core5.0.1.Final不幸的是,编译时出现以下错误。TestDao.java:[5,25]cannotfindsymbol[ERROR]symbol:classTransactional[ERROR]location:packagejavax.transaction我已经为此苦苦挣扎了一个多小时。我已经尝试添加包spring-tx但它没有帮助。org.springframeworkspring-tx4.2.1.RE

java - Java 堆栈跟踪中的代字号 (~) 是什么意思?

我注意到在堆栈跟踪中的jar名称之前,左方括号之前有波浪字符。它们总是从堆栈跟踪的顶部到某个深度出现。即使是相同的跟踪也可能有波浪号以不同深度的堆栈跟踪结束。这些波浪线表示什么?atorg.hibernate.engine.internal.Nullability.checkNullability(Nullability.java:106)~[hibernate-core-4.3.11.Final.jar:4.3.11.Final]atorg.hibernate.action.internal.AbstractEntityInsertAction.nullifyTransientRef

java - 方法命名中的 Spring 'NOT IN' 未按预期工作

问题这是错误,还是我的失败?你能解释一下哪里出了问题吗?代码我创建了简单的JPARepository@RepositoryinterfaceUserRepositoryextendsJpaRepository{UserfindByName(Stringname);CollectionfindByIdNotIn(Collectionusers);}看起来是正确的。如果users不为空,它会正常工作。但否则它工作不正确:result=userRepository.findByIdNotIn([]);它返回空结果,但它应该等于findAll方法调用的结果。userRepository.fin