【问题标题】:Find one object belonging to other connecting with relation找到一个属于另一个连接关系的对象
【发布时间】:2018-06-15 10:24:50
【问题描述】:

我有一些问题,不知道如何解决。我有与 H2 db 连接的 springboot Restfull webservice,我有团队和人员。两个entions都与many2many realtion相关(一个人可以在多个团队中,一个团队可以有很多人)。现在我想创建一个方法,我应该返回一个属于团队的人员列表。 这是我将人员添加到团队的方法。该方法在团队服务类中创建:

@Transactional
public boolean addPersonsToTeams(Long teamId, Long personId) {

    Assert.notNull(personId, "Object can't be null!");
    Assert.notNull(teamId, "Object can't be null!");

    try {
        Person person = personRepository.getOne(personId);
        Team team = teamRepository.getOne(teamId);
        team.getPersons().add(person);
    } catch (Exception e) {
        throw new CreateEntityException(e);
    }

    return true;
}

那么我应该在个人服务中创建我的新方法吗?如何创建方法,我应该从数据库中返回包含关联人员和团队的列表?

【问题讨论】:

    标签: java rest h2


    【解决方案1】:

    根据您的代码,我了解到团队有人际关系。在这种情况下,您应该在 Team Service 类中创建用于将人员添加到团队或从团队中获取人员的方法。

    您应该创建 DAO 层以与存储库交互,而不是在服务层中紧密耦合。

    【讨论】:

    • 我有 dao 我使用模型映射器。但我有问题。我需要返回包含两个对象的列表,但这是不可能的
    • 好的。为什么你应该将两个列表包装成一种自定义实例类型并传递给 modelmapper 进行转换。
    • 两个列表?我没有清单
    • 抱歉给您带来不便,我的想法不一样,你的意思是返回列表有两个对象?
    • 我有两个实体——有关系的人和团队。现在我想创建一个只返回这个有团队的人的方法。因为在我的项目中,我可以有一个未分配到团队的人。我想以列表形式返回这个人的团队。
    猜你喜欢
    • 2017-07-21
    • 1970-01-01
    • 2020-03-02
    • 2014-02-04
    • 1970-01-01
    • 1970-01-01
    • 2020-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多