草庐IT

hibernate-validator

全部标签

java - 如何初始化通过远程方法调用获取的 Hibernate 实体?

当使用Hibernate调用远程服务(例如通过RMI)从数据库加载实体列表时,您如何管理它以初始化客户端需要的所有字段和引用?示例:客户端调用远程方法加载所有客户。对于每个客户,客户都希望初始化对客户购买商品列表的引用。我可以想象以下解决方案:为每个特殊查询编写一个远程方法,初始化所需的字段(例如Hibernate.initialize())并将域对象返回给客户端。像1.但创建DTO将查询拆分为多个查询,例如一个给客户,一个给客户的文章,让客户自己管理结果远程方法接受一个DetachedCriteria,它由客户端创建并由服务器执行开发自定义“预加载模式”,即客户端明确指定要预加载哪些

java - 当我的 Hibernate 事务由 Spring 管理时如何启用 Hibernate 拦截器?

如果我与@Cascade(CascadeType.SAVE_UPDATE)有一个@OneToMany关系,如下所示publicclassOne{privateIntegerid;privateListmanyList=newArrayList();@Id@GeneratedValuepublicIntegergetId(){returnthis.id;}@OneToMany@JoinColumn(name="ONE_ID",updateable=false,nullable=false)@Cascade(CascadeType.SAVE_UPDATE)publicListgetMany

java - HIbernate InvalidDataAccessApiUsageException - 只读模式

总结:异常告诉我事务是只读的;调试println似乎表明我没有处于只读模式。为Internet发布编辑的类-如果我输入错误,请抱歉,但这是给我带来问题的代码的主旨。saveOrUpdate在调用其他对象类型时起作用,但不适用于此对象类型。我在调试时将println添加到saveOrUpdate。我没有编写抽象类,我只是想使用它(现在调试它)。代码下方的相关输出。不确定从这里去哪里。调查后更新:我也一直在对spring配置进行一些更新,一位同事指出,我从中调用updateAParameter的一种方法是以一种方式使用spring,而损坏的方法是以另一种方式使用它。不幸的是,断路正是我试图

java - Hibernate Natural ID 重复问题

一般来说,我是Hibernate和DB的新手,所以请原谅这个基本问题。我正在使用DISprotocol特别是DIS的Open-DIS实现。在DIS中,每个EntityStatePdu(包含模拟中实体的状态)都有一个EntityId对象,一个由3个整数组成的元组。我想将此对象用作自然ID,并同时维护一个标准代理ID。我的问题是我不知道如何确保数据库确定给定的EntityId已经存在并将该EntityId的主键用作EntityStatePdu中的外键。换句话说,假设我有两个EntityStatePdus,EntityID(1,2,3);即我们有来自同一实体的两个更新。我想要如下内容:表格:

java - 配置 Hibernate 以使用重命名的 persistence.xml

我们必须重命名persistence.xml以欺骗WebSphere7不要使用其内置的OpenJPA。当你使用Spring时,这很容易做到,你只需指示其实体管理器工厂使用另一个位置用于persistence.xml:但现在我们想在没有Spring的情况下使用普通的Hibernate/JPA,并且找不到任何方法来指定替代的persistence.xml位置。JPA2规范对此没有任何说明......有什么线索吗?是否可以指示Hibernate使用重命名的persistence.xml?======看起来让Hibernate读取重命名的persistence.xml文件是不可能的。在我的情况

java - Hibernate 3 Composite key one with GeneratedValue

我在数据库revisions和Pagu上有这两个表在Pagu模型中,我必须组合键:idint(由数据库自动生成)revision_id(修订版的外键)表如何在Hibernate3上实现这个?这是我想出来的@Entity@Table(name="pagu",schema="dbo",catalog="dbname")@IdClass(PaguId.class)publicclassPaguimplementsjava.io.Serializable{privateintid;privateintrevisiId;privateEntitasentitas;privateRevisirev

java - hibernate 以及如何避免模式名称更改

我使用Hibernate几年了,但不确定Query和Criteria的用法。我明白,Hibernate的优势之一是在一个地方控制字段名称。如果我有以下代码:Listcats=sess.createCriteria(Cat.class).add(Restrictions.like("name","Fritz%")).add(Restrictions.between("weight",minWeight,maxWeight)).list();如果我在java对象中更改Cat的“名称”会怎样?即使使用重构替换(如在Elipse中),它也不会将元素检测为需要更改的内容!如果是这样,您如何在Ja

java - Hibernate:在 StackOverflowError 中合并多对多结果

我有一个多对多的关系,链接表有一个额外的字段。因此,根据以下教程,关系是通过2个一对多关系完成的:http://www.mkyong.com/hibernate/hibernate-many-to-many-example-join-table-extra-column-annotation/comment-page-1/#comment-122181我有2个实体,第三个实体定义了链接表并包含一个@EmbeddableID字段。关系定义为:@OneToMany(fetch=FetchType.LAZY,mappedBy="pk.compound",cascade=CascadeType

java - 启动由模板签名的 JNLP 时继续获取 "JNLPSigningException [Failed to validate signing of launch file]"

我们决定按照this对我们的JNLP文件进行签名神谕指南。由于我们有不同的JNLP,我们采用了第二种方法(使用JNLP模板签署JAR文件)。这是我们提取到模板中的代码:*MyvendorMydescription......这是我们实际使用的JNLP之一:MyApp-ProductionversionMyvendorMydescription...请注意,我将通配符(*)用于:标签jnlp中的codebase属性标签jnlp中的href属性标题标签内的内容jar标签中的属性大小两个属性的值我将模板放在适当的JNLP-INF文件夹中(也有适当的名称),然后我们签署了JAR。但是,我们不断

java - 使用@Embedded 和@Id 的Hibernate 复合主键

我想知道hibernate是否支持使用字段和组件类型的复合主键。所以我有一个@Embeddable组件类型,我想将它用作主键以及另一列作为复合主键。所以我的表“DEPT_HISTORY”有复合主键(GROUP_DEPT、DEPTID、EFFDT)。我将GROUP_DEPT和DEPTID作为@Embeddable组件类型映射到Department类。@EmbeddablepublicclassDepartmentimplementsSerializable{privatestaticfinallongserialVersionUID=1L;privateStringdepartmentG