当存在外键联接时,带有Hibernate的Spring JPA处理空子实体
来源:爱站网时间:2021-09-23编辑:网友分享
因此,假设我有两个表,分别称为Student和Class。班级ID是学生表中的外键。某些学生的班级ID列也可能为空(表示没有为他们分配班级)。如果...
问题描述
因此,假设我有两个表,分别称为Student和Class。班级ID是学生表中的外键。某些学生的班级ID列也可能为空(表示没有为他们分配班级)。如果我们使用spring jpa为此类学生获取数据,则类实体对象将为null。我宁愿要一个空对象而不是null,以便避免手动进行null检查。我该如何实现?
学生实体-学生ID,姓名,年龄,班级ID班级实体-班级ID,班级名称,指定的老师姓名
思路:
仅在实体的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”是一个非常危险的名称想法,因为它与Java的class
关键字冲突。