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

我怎样才能为oneToMany映射这个需求

白祺然
2023-03-14
public class UserOUData {

    @Id
    private Long id;

    private String UserEmail;
private Long orgUnitPathId;
}
@Entity
@Table(name="Ou")
public class OU {

    @Id
    private long id;
    
    private String name;
    
    private String path;
    
    @ManyToOne
    @JoinColumn(name="id")
    private Collection<UserOUData> usersId;
    }

非法尝试将非集合映射为@onetomany、@manytomany或@collectionofelements:cloudcodes.schema.generator.model.useroudata.orgunitpathid

    private Long orgUnitPathId;
    @ManyToOne
    @JoinColumn(name="orgUnitPathId")
    private Collection<UserOUData> usersId;

有人能帮我提前谢谢你吗。

共有1个答案

陶鸿畴
2023-03-14

您有一个可以有多个用户的组织单元,因此需要组织单元上的oneTomany关系:

@Entity
@Table(name="Ou")
public class OU {
    @Id
    private long id;
    
    private String name;
    private String path;
    
    @OneToMany(fetch = FetchType.LAZY, mappedBy = "organizationalUnit")
    private Collection<UserOUData> usersData;
}

对于useroudata,您需要一个manytoone,因为多个用户可以是同一个ou:

@Entity
@Table(name="UserOUData")
public class UserOUData {

    @Id
    private Long id;

    private String UserEmail;
    
    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "ou_id")
    private OU organizationalUnit;
}

此设置假定您希望在OUUserouData之间建立双向连接。

 类似资料:
  • 有什么方法可以简化这段代码吗?我正好有一个白色的一块,想要得到它的位置 代码: 瓦片类: 件类:

  • 我正在尝试获取角色id,但我不知道如何操作,因为它不起作用: 身份验证::用户- 对象(照亮\数据库\雄辩\收集)#843(1) {["项目":受保护]=

  • 输入: 第一行:两个空间分隔的整数N和Q,分别表示数组A中的元素数和查询数 第二行:N个表示数组元素的分隔整数

  • Traceback(最近调用最后一次):文件"C:\用户\josej\AppData\本地\程序\Python\Python310\lib\站点包\mysql\连接器\abstracts.py",第553行,在配置DEFAULT_CONFIGURATION[key]KeyError:'datebase' 在处理上述异常期间,发生了另一个异常: 回溯(最近一次调用):文件“C:\Users\jose

  • 我有“下载正在进行文件”对话框活动。当用户按下“隐藏”按钮时,活动将创建通知和隐藏进度对话框。并且当用户单击到通知时,活动显示进度对话框再次出现在活动中。我如何在按下按钮“后退”时切换活动到后退任务?