【发布时间】:2019-12-05 19:35:00
【问题描述】:
我有这门课:
public class Tenant {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
@NaturalId
@Column(name = "name", nullable = false, updatable = false, unique = true)
private String name;
@OneToMany(mappedBy = "tenant", cascade = CascadeType.ALL, orphanRemoval = true)
private List<User> users;
@OneToMany(mappedBy = "tenant", cascade = CascadeType.ALL, orphanRemoval = true)
private List<Role> roles;
@OneToOne(mappedBy = "tenant", cascade = CascadeType.ALL, orphanRemoval = true, optional = false)
private TenantLimits limits;
}
当然,所有引用的类都是实体。我可以从这里创建、更新和检索所有内容,但由于private TenantLimits limits; 指的是在创建租户之后创建的实体,因此我的许多租户元素不包含任何匹配的租户限制。
所以我的问题是:当我要检索租户时,如何在数据库中插入 TenantLimits 中的值(如果为空)?在Java中,我可以轻松检查(当然)属性是否为null并手动插入foreach检索,但由于该实体的检索存在于我的代码中的不同位置,如果存在,我将有一些自动管理它的东西
【问题讨论】:
标签: java hibernate jpa spring-data-jpa