看了下lucene,后来看到compass这个框架。
现在在做一个图书的搜索实现,在做检索的时候发现compass不支持cascade ,
高手指点下吧 ,不然又要“流产”了
book.cmp.xml
=======================================================================
<?xml version= "1.0 "?>
<!DOCTYPE compass-core-mapping PUBLIC
"-//Compass/Compass Core Mapping DTD 1.0//EN "
"http://www.opensymphony.com/compass/dtd/compass-core-mapping.dtd ">
<compass-core-mapping package= "com.jlive.search.beans ">
<class name= "Book " alias= "book ">
<id name= "id " />
<property name= "bookname ">
<meta-data> bookname </meta-data>
</property>
<property name= "contents ">
<meta-data> contents </meta-data>
</property>
<property name= "publication ">
<meta-data> publication </meta-data>
</property>
<property name= "publicationdate ">
<meta-data> publicationdate </meta-data>
</property>
<component name= "author " cascade= "all " ref-alias= "author "/>
</class>
</compass-core-mapping>
author.cpm.xml
=====================================================================
<?xml version= "1.0 "?>
<!DOCTYPE compass-core-mapping PUBLIC
"-//Compass/Compass Core Mapping DTD 1.0//EN "
"http://www.opensymphony.com/compass/dtd/compass-core-mapping.dtd ">
<compass-core-mapping package= "com.jlive.search.beans ">
<class name= "Authors " alias= "author ">
<id name= "id " />
<property name= "introduction ">
<meta-data> introduction </meta-data>
</property>
<reference name= "books " cascade= "all " ref-alias= "book "/>
<property name= "authorname ">
<meta-data> authorname </meta-data>
</property>
<property name= "telephone ">
<meta-data> telephone </meta-data>
</property>
</class>
</compass-core-mapping>
=======================================================================
compass = (Compass) ApplicationContextUtil.getFactory().getBean(
"compass ");
CompassTemplate template = new CompassTemplate(compass);
template.execute(new CompassCallbackWithoutResult() {
protected void doInCompassWithoutResult(CompassSession session)
throws CompassException {
CompassQueryBuilder queryBuilder = session.queryBuilder();
// The following search will result in matching "london " against