山一程--软件开发--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 来解决. 避免一开始就填充.

 

posted @ 2023-08-28 19:54  君子之行  阅读(24)  评论(0)    收藏  举报