我想从数据库加载 UserReference 对象,但从 verifier 属性我只想加载 id、firstName 和 lastName,这样 userReference 看起来像这样:
{
"id": 1,
"company": "company1",
"companyContactName": "some name",
"companyPosition": "programmer",
"referenceDate": "02/04/2005",
"verifier": {
"id":1
"firstName": "Jane",
"lastName": "Smith"
"email":null,
"username":null,
"office:null,
"department":null
}
}
Run Code Online (Sandbox Code Playgroud)
我为 UserReference 类使用了实体图,但我使用的实体图加载了用户拥有的所有信息,包括电子邮件、用户名、办公室和部门。有没有什么方法可以为子图指定 EntityGraphType.FETCH 之类的内容,以便它只加载验证者的 id、firstName 和 lastName?
这是我的 UserReferenceRepository:
public interface UserReferenceRepository extends JpaRepository<UserReference, Long>{
@EntityGraph(value = "userReferenceGraph" , type = EntityGraphType.FETCH )
UserReference findOne(Long id);
}
Run Code Online (Sandbox Code Playgroud)
UserReference 类:
@Getter
@Setter
@EqualsAndHashCode (exclude = {"id", "verifier"})
@ToString(exclude = {"id"})
@Entity
@NamedEntityGraphs({
@NamedEntityGraph(
name = …Run Code Online (Sandbox Code Playgroud)