Solr学习笔记(三)Solr客户端开发实例
Warming Up:
本文章通过两种方法索引数据为主线,说明Solr客户端开发,两种方法分别是:直接发送XML文件到Solr服务器;通过Solrj建立客户端程序。本文分别从这两个方面各写一个例子程序;
Dependency:Solr: apache-solr-1.4.1??? Tomcat: apache-tomcat-7.0.0
Note:本文谈论到不止数据索引,还包括对Solr索引数据的优化,回滚,删除等处理
?
方法1:直接发送XML文件到Solr服务器
由题目可知,直接发送数据到Solr服务器,必须和服务器建立交互关系,这里我提供的解决办法自己写一个Tomcat客户端,此客户端负责和Solr服务器(Tomcat)完成交互;另外要发送的XML必须符合一定规律,否则不能够索引,如下面所示是本文中药发送的XML,通过它我们可以简单学习这种XML的基本格式:根目录<add></add>里面包含又一系列document,而这一些列document里面又包含了各个document的一系列Field,如下代码段所示:
?
?点击查询可以看到如下结果:?
?如上结果singer出现三次分别id号:103,104,105,当然可以验证删除,优化等,这里就简要带过,不过需要注意的是对Solr服务器昨晚处理后必须调运Commit方法进行提交,不然不会起作用;
?
?方法2:Solrj建立与服务器交互
?
3、SolrQuery, Solr查询类,该类包含基本查询参数,例如"*:*"表示查询索引中所有Document;
4、QueryResponse,该类代表查询结果,它封装了一系列方法查看满足条件的Documents信息,如下代码:
?
如上向8080端口上服务器添加10条数据:
然后若测试查询:
?显示查询结果:
10id=0 msg=kobe bryant0 name=kylin soong0 id=1 msg=kobe bryant1 name=kylin soong1 id=2 msg=kobe bryant2 name=kylin soong2 id=3 msg=kobe bryant3 name=kylin soong3 id=4 msg=kobe bryant4 name=kylin soong4 id=5 msg=kobe bryant5 name=kylin soong5 id=6 msg=kobe bryant6 name=kylin soong6 id=7 msg=kobe bryant7 name=kylin soong7 id=8 msg=kobe bryant8 name=kylin soong8 id=9 msg=kobe bryant9 name=kylin soong9?
?
PS: 到此结束,可以根据附件中代码提供的测试例子进行详细研究;
?
?
?
?
?
?
?