山一程--软件开发--Spring JPA Hibernate - 项目记录
目的:记录项目中实际遇到的 JPA Hibernate DB design 相关的技术点
2023-08-28
总述:一次设计有问题的记录。
意图:

1.User 包含用户信息
2.Biz_Category 业务类别信息表. 记录各种业务功能
3.Aduit_accessed 业务功能访问审计表. 记录表
疑惑:审计表是否归类为 数据仓库表,带有冗余字段。而非 employee - department 多对一的关系.
初期设计中: Audit 表有两个外键关联 User 和 BizCategory 表。在Java 类中注解 Hibernate 关联
do 1 : User 和 BizCategory 都 OneToOne Audit 表.
audit 中 user + bizCategory + dateTime 是组合唯一键。
结果:创建两个 user 后无法再创建第三个 user。 提示报错如下:

应该是 类模型关系匹配不对。
思考一下 下一种
do 2: User 和 Audit 是 1 对多关系, 或 多对多? 中间表? 还存在着 BizCategory 与 Audit 的关联。
此时开始思考 Audit 是否归属不同类型的表。当数仓的表。只记录 User的 身份字段, 只记录 bizCategory 身份字段 名称。撤销它们之间的关联.
(留此问题待后面进一步分析)
2. 自定义查询,

3. 记录,因为懒加载导致 初始化null 的问题.
尝试如下,先查询填充,但失败,后续再研究。

懒加载的问题,通过 加载一次 users 来解决. 避免一开始就填充.



浙公网安备 33010602011771号