我的目标是存储有关杰克兔子项目的信息。每个项目可以由几个子项目组成,其上附有与项目相关的文件/文件。
考虑以下结构:
-project 1
-project 1.1
-project 1.2
-project 1.2.1
-project 1.2.2
-project 2我有一个java类表示每个项目,如下所示:
public class Project {
@Field
private String name;
@Collection
private List<Project> subprojects;
// more properties + getter/setter
}我的问题是:
project 1的信息时,我不需要来自子项目的所有信息。实现这一目标的最佳方法是什么?(不幸的是,Jack兔子的OCM文档并不是很详细)
发布于 2012-07-15 02:45:48
对于延迟加载,可以通过在Bean或Collection注释中指定proxy=true来实现这一点。
二进制数据可以表示为jcr:data属性的nt:resource,因此映射如下所示。
@Node(jcrType = "nt:resource")
public class ResourceModel extends MimeTypeModel {
@Field(path = true)
String path = null;
@Field(jcrName = "jcr:data")
java.io.InputStream jcr_data = null;
}的确,OCM的文档没有更新,但是您可以在源分布中从/org/apache/jackrabbit/ocm/config/jackrabbit-ocm-1.5.dtd中找到src/main/resources下的有用信息。
HTH,
https://stackoverflow.com/questions/11477800
复制相似问题