hibernate-entitymanager
全部标签 我们的设计有一个jvm,它是一个jboss/webapp(读/写),用于通过hibernate(使用jpa)将数据维护到数据库。该模型有10-15个持久类,关系深度为3-5个级别。然后我们有一个单独的jvm,它是使用这些数据的服务器。由于它持续运行,我们只有一个长数据库session(只读)。目前不涉及内部jvm缓存-因此我们手动从一个jvm发出信号。现在,当webapp更改某些数据时,它会向服务器发出信号以重新加载更改后的数据。我们发现我们需要告诉hibernate清除数据然后重新加载它。仅仅对数据库进行获取/合并并不能完成这项工作——主要是关于层次结构中几层的对象。关于此设计是否存
是否可以仅使用一张表来存储如下内容?现在,hibernate将做的是创建两张表,一张用于Families,一张用于people。我希望将familymembers对象序列化到数据库中的列中。@Entity(name="family")classFamily{privatefinalListfamilyMembers;}classPerson{StringfirstName,lastName;intage;} 最佳答案 这是一个糟糕的设计,我真的不推荐它(你应该创建另一个表)但它是可能的。首先,您需要使用byte[]属性来保存将存储在
我需要在不使用抽象类的情况下扩展具有相同特征的实体。我可以编写如下代码吗?@Entity@Table(name="ABC")@SequenceGenerator(sequenceName="SEQ_ABC",name="idGenerator",allocationSize=1)publicclassAbc{..//definemembers}@Entity@Table(name="EX_ABC")publicclassExAbcextendsAbs{..//defineextras..}提前谢谢 最佳答案 是的,这个没有任何问题。
如何使用Spring和Hibernate配置连接池?谢谢地点 最佳答案 您可以使用DBCP组件com.project.domain.Domain1com.project.domain.Domain1${hibernate.dialect}${hibernate.show_sql}${hibernate.show_statistics} 关于java-Spring&Hibernate的连接池,我们在StackOverflow上找到一个类似的问题: https:/
我正在尝试从一个方法中执行一个简单的selectcount语句,该方法适用于我的程序的其他部分,但在这里它给了我错误。publicLongvalidateSub(Stringsource,Stringtbl){Sessionsession=HibernateUtil.getSessionFactory().openSession();session.beginTransaction();Queryq=session.createQuery("SELECTcount(s)fromSlaveSubscribersswheres.SOURCENAME=:sourcenameANDs.TBL=
我正在通过映射配置文件配置Hibernate。如何将age设置为可为null并默认为null? 最佳答案 关于java-在Hibernate的XML配置文件中指定默认值,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10610211/
@Valid注解放在方法参数层的目的是什么?publicvoid(@ValidPersonp){...}我创建了一个测试,并向该方法传递了一个无效对象,但没有任何反应。我希望得到一个异常(exception)。 最佳答案 对象上的@Valid注释指示验证框架处理带注释的对象。当用于方法的参数时,这称为方法级别验证。请注意,方法级验证不是核心规范的一部分,实际上只有当BeanValidation集成到容器类型框架(JSF、CDI、JavaEE).当BeanValidation集成到这样的支持容器中时,会发生这样的情况,即在bean上调
如果我的实体有计算字段,应该在保存到数据库之前更新(dbinsert或update),如何在Hibernate或SpringDataRepositorysave()之前Hook方法调用? 最佳答案 我认为对你来说最好的选择是EntityListener使用@PrePersist和@PreUpdate注释,为你的实体监听器创建配置您将可以访问要保存的每个实例,每次您尝试使用hibernate或spring数据存储库保存或更新某些内容时都会调用此方法publicclassEntityToPersistListener{@PrePersi
我有一个objectA映射到数据库中的tableAclassA{Integerid;Stringfield2,field2;field3,...fieldN;//lotsofotherattribute}现在我想写一个只更新单个字段的DAOapi。一种方法是我可以先加载对象,然后更改我需要的属性,然后使用合并api//starttranscationAa=session.load(A.class,id);A.setfieldP(newValue)session.merge(A)//committranscation现在如果我使用下面的代码//starttranscationAa=new
我在数据库中有时间戳,在应用程序中我有日期。我喜欢以这样的方式编写hibernate标准,即hibernate可以提取与日期匹配的所有条目,而不是时间部分。例如在数据库时间戳中2011-12-0115:14:14在应用程序中我确实有java.util.Date,默认情况下它有时间部分。我的问题是,当我使用以下代码从数据库中搜索条目时,我一无所获DetachedCriteriacriteria=DetachedCriteria.forClass(MyClass.class);criteria.add(Restrictions.like(TIMESTAMP_FIELD,javaUtilDa