比如我数据库有
产品表product,字段product_id(产品编号),字段product_name(产品名字),字段product_content(产品内容)
新闻表news,字段news_id(新闻编号),字段news_title(新闻标题),字段news_content(新闻内容)
jsp页面
<h3>搜索</h3>
<div id="search">
<input type="text" class="search" />
<input type="submit" class="submit" value="搜索" />
</div>
我想实现一个搜索功能,对产品表和新闻表都要进行搜索,怎么实现?在线等!!!!!

解决方案 »

  1.   

    用Lucene,很简单,把两个表的字段都做一下index,然后关键字就是term查询一下,很好很强大。总共不会多你几行代码,还可以学习个新东西,试试吧?
      

  2.   

    或者用包装好的SOLR,Webservice调用,支持schema,更简单了,维护方便。在schema中写你的组合查询SQL,然后把查询关键字用webservice的方式发给solr服务器,等结果就行了。:)
      

  3.   

    _在数据库中搜索很难做的,至少分页就不好解决(两个表一起分页?),用视图是一个不错的办法。_这种情况建议使用Lucene全文搜索解决方案,使用Compass封装的Lucene。可以将两个表中的数据做成两个对应的索引库,再进行聚域检索,即同时在多个索引库检索。但做成聚域检索后,要浏览详细的结果项(点击结果项连接),程序就不知道往哪儿去,这时一般都要用抽象类来解决。
    可以看一个做好的实例:http://www.chinaot.com/search/all/engine.html?q=%E5%8F%91%E5%85%89%E6%9D%90%E6%96%99