Java JPA OneToMany更新后出现的问题

Java JPA OneToMany更新后出现的问题,java,jpa,orm,entity-relationship,one-to-many,Java,Jpa,Orm,Entity Relationship,One To Many,我有两个类,父类和子类,具有@OneToMany关系。每个父项都有0个或多个子项 @OneToMany(fetch=FetchType.LAZY, cascade={CascadeType.REMOVE}) 父类还有其他字段,如名称 我在一个容器env中,所以我的UI是由JSP组成的 当我想要更改父对象时,我必须将其传递给servlet并向下传递到客户端浏览器。在网页中,我不想把所有的孩子信息都放进去,我只想给父母的名字加一个文本字段 当控件返回给我时,我想用全新的名称创建一个新的Parent

我有两个类,父类和子类,具有
@OneToMany
关系。每个父项都有0个或多个子项

@OneToMany(fetch=FetchType.LAZY, cascade={CascadeType.REMOVE})
父类还有其他字段,如名称

我在一个容器env中,所以我的UI是由JSP组成的

当我想要更改
父对象时,我必须将其传递给servlet并向下传递到客户端浏览器。在网页中,我不想把所有的孩子信息都放进去,我只想给父母的名字加一个文本字段


当控件返回给我时,我想用全新的名称创建一个新的
Parent
对象,并将
EntityManger
合并,而不用担心子对象。

我认为正确的方法实际上是加载现有的父对象,将name属性设置为新值,然后保存它。这就是你正在做的


因此,表单需要一个字段作为用户可以输入的名称,以及一个包含父项id的隐藏字段。发布表单时,您可以按id加载父对象,将名称设置为输入的值,然后保存。

谢谢Davis,这可能是唯一的方法。就性能而言,我可以假设PersistenceContext可能已经有了对象的实例吗?我对此不确定。这将取决于您的缓存设置。我只是建议,在正常情况下,通过ID进行查找非常快,除非您有数千个孩子。永远不要忘记“过早优化是万恶之源”;-)