当存在外键联接时,带有Hibernate的Spring JPA处理空子实体

问题描述 投票:1回答:1

因此,假设我有两个表,分别称为Student和Class。班级ID是学生表中的外键。某些学生的班级ID列也可能为空(表示没有为他们分配班级)。如果我们使用spring jpa为此类学生获取数据,则类实体对象将为null。我宁愿要一个空对象而不是null,以便避免手动进行null检查。我该如何实现?

学生实体-学生ID,姓名,年龄,班级ID班级实体-班级ID,班级名称,指定的老师姓名

java spring hibernate jpa spring-data-jpa
1个回答
0
投票
仅在实体的getter中进行空检查。

public Class getClass() { if (null == this.myClass) { return new Class(); // assuming the default constructor resembles an empty class } return this.myClass; }

如果代码中没有真正的“空” Class,只需返回一个Optional<Class>

编辑:顺便说一句,使用“ Class”是一个非常危险的名称想法,因为它与Java的class关键字冲突。
© www.soinside.com 2019 - 2024. All rights reserved.