当前位置: 首页 > 知识库问答 >
问题:

合并父级和惰性子级集合列表

钮博裕
2023-03-14

父对象放在spring控制器的@SessionAttributes中,这是原因吗?

即使我只合并子列表,合并(childList),它也创建新记录而不是更新。

    @Entity
    @Table(name = "member")
    public class Member implements Serializable{



        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        @Column(name="id")
        private int id;

        @OneToMany(fetch = FetchType.LAZY, mappedBy = "memberParent", cascade = CascadeType.ALL)
        public List<Child> ChildList


        getter setter......

    }

    @Entity
    @Table(name = "child")
    public class Child implements Serializable{



        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        @Column(name="id")
        private int id;

    @Column(name="member_id")
        private int mem_id;

    @ManyToOne(fetch = FetchType.EAGER)
        @JoinColumns({
            @JoinColumn(name = "member_id", referencedColumnName = "id", insertable = false, updatable = false)
        })
        public Member memberParent;


        getter setter......

    }




//Controller
    @SessionAttributes({"member"})
    public class Appcontroller {

    @Transactional
        @RequestMapping(value = {"/update-member/{id}"}, method = RequestMethod.GET)
        public String viewEditRepresetative(ModelMap model, @PathVariable ind id) {
        Member member = memberService.find(id);
        model.addAttributes("member", member);

    }

    @Transactional
        @RequestMapping(value = {"/update-member"}, method = RequestMethod.POST)
        public String viewEditRepresetative(ModelMap model, HttpServletRequest reques, @Valid @ModelAttribute("member") Member member, BindingResult result,
                RedirectAttributes redirectAttributes, SessionStatus status) {
        if (!result.hasErrors()) {
            memberService.merge(member);
        }

    }

共有1个答案

韩宜春
2023-03-14

我在快照代码中看不到任何父子关系。

请用下面的代码修改子类的代码以创建继承关系。

public class Child extends Member implements Serializable{

将子类扩展到父类(成员)将反映与惰性加载相关的所需更改。

 类似资料:
  • 我有3个级别的父/子结构。假设: 公司- 由于这里经常更新可用性(以及员工),所以我选择对嵌套使用父/子结构。搜索功能工作正常(所有文档都在正确的碎片中)。 现在我想对这些结果进行排序。按公司(第1级)的元数据对它们进行排序很容易。但我也需要按第3级(可用性)进行排序。 我想要按以下顺序排列的公司列表: 与给定ASC位置的距离 评级DESC 最快可用性ASC 例如: A公司距离我们5英里,评分为4

  • 在 Git 中合并是相当容易的。 因为 Git 使多次合并另一个分支变得很容易,这意味着你可以有一个始终保持最新的长期分支,经常解决小的冲突,比在一系列提交后解决一个巨大的冲突要好。 然而,有时也会有棘手的冲突。 不像其他的版本控制系统,Git 并不会尝试过于聪明的合并冲突解决方案。 Git 的哲学是聪明地决定无歧义的合并方案,但是如果有冲突,它不会尝试智能地自动解决它。 因此,如果很久之后才合并

  • 集合类专门用于数据存储和数据检索,并提供堆栈、队列、列表和哈希表的支持。目前,大多数集合类都实现了相同的接口。 集合类服务于不同的目的,如为元素动态分配内存,基于索引访问列表项等等,这些类所创建的是 Object 类的对象的集合。在 C# 中,Object 类是所有数据类型的基类。 各种集合类及其用法 下表为一些常用的以 System.Collection 为命名空间的集合类,点击相应链接,可查看

  • 我正在开发一个Struts2 Spring Hibernate webapp,我需要在检索一个对象或该对象的集合后初始化一个惰性集合。 用例 我有一个团队模型,其关系被热切地加载为员工(我认为这显然是一个集合)。反过来,员工模型有一个懒惰的关系注册表,我只需要一些特定的操作,所以我根本不需要急切地加载它。 现在。我调用我的(用Spring注入到我的Struts2控制器中),以便检索一个特定的已经加

  • 在我的jpa映射中,我试图将带有一个主键的父类映射到带有复合键的子类,但似乎插入了错误的表,它已经生成了2个表,但不幸的是我没有绑定外键(policy_value_summary_id) 我试图用策略值(子类)保存策略摘要值(父),如下所示 下面是输出给我的错误

  • 问题是要确定子数据的总和是否等于父数据。如果是,返回真,否则返回假。 下面是我的代码,在提交时出现错误。我知道这是一个简单的问题,但在编写了条件之后,我很难通过遍历所有左右节点来递归检查二叉树中每个节点的和条件。 请指导我,因为我哪里做错了。