1 在虚拟机中安装Solr服务。参考博客:http://www.cnblogs.com/immortal-ghost/p/6951816.html
安装成功后可打开Solr管理页面:http://192.168.209.131:8080/solr/index.html,根据自己的域名打开。
2 Solr中数据增删改
2.1 需要用到的架包:solr-solrj-5.3.1.jar,在Solr安装包中的dist\solrj-lib文件下有,好需要一系列日志SLF4J等相关的架包。
详情请参考:https://wiki.apache.org/solr/Solrj
2.2 获取Solr服务
启动Solr所在的容器服务
/**
* Solr服务地址
*/
public static final String SOLR_URL="http://192.168.209.131:8080/solr/mycore";
/**
* 获取Solr服务
* @return
*/
@SuppressWarnings("deprecation")
public static HttpSolrServer getSolrServer() {
return new HttpSolrServer(
SOLR_URL);
}
2.3 增
public static void addDocument() {
HttpSolrServer solrServer = getSolrServer();
try {
SolrInputDocument document = new SolrInputDocument();
document.addField("id", 4);
document.addField("user_id", 4);
document.addField("user_name", "是十多个撒的发撒");
document.addField("user_password", "123");
solrServer.add(document);
solrServer.commit();//提交数据
} catch (Exception exception) {
exception.printStackTrace();
}
}
2.4 删
/**
* 删除所有数据
*/
public static void deleteDocument(){
HttpSolrServer solrServer=getSolrServer();
try{
solrServer.deleteByQuery("id:*");
solrServer.commit();
}catch(Exception exception){
exception.printStackTrace();
}
}
2.5 改,需要说明的是,在Solr中没有修改操作,只有覆盖,根据Id重新覆盖之前的数据即可。
附出现的问题:
连接Solr服务的时候报错:
Expected mime type application/octet-stream but got text/html.
原因:Solr连接的URL有问题,应该是IP:端口号/solr/数据仓库。
正确URL:HttpSolrServer solrServer2 = new HttpSolrServer(“http://192.168.209.131:8080/solr/mycore“);