您的位置:首页 > 运维架构 > 网站架构

用compass快速给你的网站添加搜索功能

2008-05-03 14:57 555 查看
用compass快速给你的网站添加搜索功能<二>
[align=left] 在上一篇文章中主要讲了,配置要索引的表和compass与spring整合时的配置。接下来我把余下的两部分写出来。[/align][align=left] 第三步:配置手动创建索引的功能。[/align][align=left] 这个其实只需在第一次生成索引的时候用,当系统正常运行时,compass中的hibernateGps会自动检测数据的变动,同时同步索引文件的。[/align][align=left] 首先在applicationContext.xml中配置bean.[/align][align=left] <!-- 手工生成索引 -->
<bean id="buildIndexController"
class="org.compass.spring.web.mvc.CompassIndexController">
<property name="compassGps" ref="hibernateGps" />
<property name="indexView" value="/ftl/create.ftl" />
<property name="indexResultsView" value="/ftl/create.ftl" />
</bean>[/align][align=left] 同时我们也要配置与之相应的请求映射。[/align][align=left] <bean id="urlHandlerMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/buildindex.htm">buildIndexController</prop>
</props>
</property>
</bean>[/align][align=left] 最后就是自动生成索引的页面了,这里我用的是freemarker.用什么都一样,你可以用jsp,html.[/align][align=left] create.ftl(在WebRoot下的ftl文件夹下)[/align][align=left] <html>
<head>
<title>builderIndex</title>
</head>[/align][align=left] <body>
<h1>
手工重建索引
</h1>
<p>
<form name="keyword" action="/buildindex.htm" method="post">
<INPUT type="hidden" name="doIndex" value="true">
<input type="submit" value="手工重建索引" />
</form>
<#if indexResults?exists>
本次索引耗时${indexResults.indexTime}毫秒!
</#if>
<p>
</body>
</html>[/align][align=left] 当我们点击手工重建索引按钮时,会在我们指定的索引目录下<prop key="compass.engine.connection">E:/video</prop>也就先在E:/video下生成gpsindex/video-index当索引生成完以后,会返回生成索引所用的毫秒数。这时就会把gpsindex文件夹下的video-index覆盖到E:/video/index/下的video-index文件夹。这时gpsindex/video-index也消失了。这就是简单的生成索引的过程。接下来我们要说最后一步了。索引我们已建好了,怎么去搜索我们想要的数据了。[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: