我已经建立了一个收集数据并将其存储在 rdf/xml 文件中的网络爬虫,现在我想将该数据映射到我的 java 对象......我该怎么做?
我发现这段代码可能对我有用,但我似乎无法正确使用它......它从我的 rdf/xml 文件中收集主题、谓词和对象,但我可以用我的 java 指定对象表示这些数据,我不知道怎么......我用谷歌搜索了很多,但没有太多有用的东西,所以帮助大家!:D
StmtIterator iter = rdfGraph.listStatements();
while (iter.hasNext()) {
Statement stmt = iter.nextStatement(); // get next statement
Resource subject = stmt.getSubject();
//System.out.print(subject.getNameSpace( ) + subject.getLocalName( ));// get the subject
Property predicate = stmt.getPredicate();
//System.out.print(" " + predicate.getNameSpace( ) + predicate.getLocalName( ));// get the predicate
RDFNode object = stmt.getObject(); // get the object
//System.out.println(" " + object.toString( ) + "\n");
System.out.println(subject + " | "+predicate + " | " + object);
}
这是我的 rdf 文件的一部分...
<rdf:Description rdf:nodeID="A12">
<schema:reviewRating rdf:nodeID="A13"/>
<schema:description>descriptiooooon</schema:description>
<schema:datePublished>2012-02-22</schema:datePublished>
<schema:author>Nick M.</schema:author>
<rdf:type rdf:resource="http://schema.org/Review"/>
</rdf:Description>
我想用这个 java 对象来表示它..这是我的课...
@Namespace(Constants.SCHEMA)
@RdfType("Review")
public class Review extends Thing{
@RdfProperty(Constants.SCHEMA + "author")
private String author;
@RdfProperty(Constants.SCHEMA + "reviewRating")
private Rating reviewRating;
@RdfProperty(Constants.SCHEMA + "datePublished")
private Date datePublished;
@RdfProperty(Constants.SCHEMA + "description")
private String description;
}