【发布时间】:2015-01-23 13:56:37
【问题描述】:
我正在使用 jhipster v2。我有两个实体(父亲、女儿),父亲与女儿有一对多关系,女儿与父亲有多对一关系。 我刚刚对生成的 java 代码进行了一次修改:
- 我已将父女关系的fetch类型配置为EAGER。
当我获取所有父亲时,在 Java 端我可以看到附加到父亲的 Daughters 集合,但在客户端(Anglarjs)端看不到集合,父亲 javascript 对象没有“女儿”的财产。
正常吗? 在服务器端:
@Entity
@Table(name = "T_CLIENT")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class Client implements Serializable {
...
@OneToMany(mappedBy = "client", fetch = FetchType.EAGER)
@JsonIgnore
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
private Set<Adresse> adresses = new HashSet<>();
@OneToOne
private Langue langue;
...
}
客户端(在我的 angularjs 控制器中):
$scope.clients = Client.query(function(){
$log.info($scope.clients);
});
在客户端我可以看到客户端的“语言”属性,但客户端中没有“地址”属性。 我不明白为什么。
感谢您的回答。
【问题讨论】:
-
这是由于@JsonIgnore。它告诉 spring 不要编组该属性。
标签: java rest jpa one-to-many jhipster