欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

solr安装配置 SolrTomcatApacheXMLlucene 

程序员文章站 2022-07-14 20:11:55
...

1、先下载 Apache Solr 1.3 http://apache.etoak.com//lucene/solr/1.4.0/,解压到如 E:\apache-solr。

2、Apache Tomcat 6  相关mysql驱动放到对应tomcat\lib下。

3、solr 安装到 tomcat。修改 E:\apache-tomcat-6.0.18\conf\server.xml,加个 URIEncoding="UTF-8",把 8080 的那一块改为:配置它保证中文编码正确。

  1. <Connector port="8080" protocol="HTTP/1.1"  
  2.            connectionTimeout="20000"  
  3.            redirectPort="8443" URIEncoding="UTF-8"/>  

4、把下面的内容保存到 E:\apache-tomcat-6.0.18\conf\Catalina\localhost\solr.xml,没有这个目录自行创建。

  1. <Context docBase="E:/apache-solr-1.4.0/dist/apache-solr-1.4.0.war" reloadable="true" >  
  2.     <Environment name="solr/home" type="java.lang.String" value="E:/apache-solr-1.4.0/example/solr" override="true" />  
  3. </Context>  

5、现在安装好,启动 tomcat,并打开 http://localhost:8080/solr/admin/ 看看界面。

 

6、简单solr应用 http://www.cnblogs.com/cy163/archive/2009/09/18/1569681.html

 

7、solr 的操作

删除 solr 中的数据有几种方式:

1)先来看 curl 方式:

  1.   
  2. curl http://localhost:8080/solr/update --data-binary "<delete><query>title:abc</query></delete>" -H 'Content-type:text/xml; charset=utf-8'   
  3.   
  4. #删除完后,要提交   
  5.   
  6. curl http://localhost:8080/solr/update --data-binary "<commit/>" -H 'Content-type:text/xml; charset=utf-8'  
curl http://localhost:8080/solr/update --data-binary "<delete><query>title:abc</query></delete>" -H 'Content-type:text/xml; charset=utf-8'

#删除完后,要提交

curl http://localhost:8080/solr/update --data-binary "<commit/>" -H 'Content-type:text/xml; charset=utf-8'

2)、用自带的 post.jar,在 apache-solr-XXX\example\exampledocs 目录下:

  1.   
  2. java -Ddata=args  -jar post.jar "<delete><id>42</id></delete>"  
  3.   
  4. #怎么使用 post.jar 查看帮助   
  5.   
  6. java -jar post.jar -help  
java -Ddata=args  -jar post.jar "<delete><id>42</id></delete>"

#怎么使用 post.jar 查看帮助

java -jar post.jar -help

3) 直接用 url,使用 stream 相关参数:

比如:

http://localhost:8080/solr/update/?stream.body=<delete><id>123</id></delete>&stream.contentType=text/xml;charset=utf-8&commit=true

stream 相关参数还有:stream.file=(服务器本地文件),stream.url 分别指到你的删除文本,这里是直接字符串内容用 stream.body 参数。commit 参数是指提交,提交了才能看到删除效果。

小结:其实,方式1、2原理一样,直接 POST xml 数据过去。方式3就是直接可以告诉服务器从那些地方取删除的 xml 内容。