Solr 6.6.0 java实现文件的上载和查询 (三)

xiaoxiao2021-02-28  98

作为程序员,肯定希望代码来帮我们完成所有的是,不喜欢用网页的界面。

而且网页的界面也不好用。尤其是对大规模数据导入的时候。

我这里送上几段测试代码,供大家参考:

(1)文件上传:

HttpSolrServer server = new HttpSolrServer("http://localhost:8080/solr"); // 创建Document对象 SolrInputDocument doc = new SolrInputDocument(); doc.addField("id", "c001"); doc.addField("name", "solr test111"); // 将Document对象添加到索引库 server.add(doc); // 提交 server.commit();这里要提一个问题:

我在运行的时候发现:HttpSolrServer不用用了,我在solrj的开发包里并没有发现这个类。

于是我最后用的是:HttpSolrClient server = new HttpSolrClient(url);,一样的功能。

(2)文件查询:

public void search01() throws Exception { // 创建HttpSolrServer HttpSolrServer server = new HttpSolrServer("http://localhost:8080/solr"); // 创建SolrQuery对象 SolrQuery query = new SolrQuery(); // 输入查询条件 query.setQuery("product_name:小黄人"); // 执行查询并返回结果 QueryResponse response = server.query(query); // 获取匹配的所有结果 SolrDocumentList list = response.getResults(); // 匹配结果总数 long count = list.getNumFound(); System.out.println("匹配结果总数:" + count); for (SolrDocument doc : list) { System.out.println(doc.get("id")); System.out.println(doc.get("product_name")); System.out.println(doc.get("product_catalog")); System.out.println(doc.get("product_price")); System.out.println(doc.get("product_picture")); System.out.println("====================="); }}上面的代码可以实现基本信息的上传和查询,

大家可以根据自己文档的内容来修改上传到内容,

如果有新的信息类,记得去配置文件:managed-schema.xml中添加对应的Field。

转载请注明原文地址: https://www.6miu.com/read-40763.html

最新回复(0)