`
747017186
  • 浏览: 331544 次
社区版块
存档分类
最新评论

solrj的使用

 
阅读更多

在前面熟悉了solr的配置,在solr配置好了之后,solr就可以增加索引了,这样就必须使用solrJ了,我在附件上传了很多例子。

solrHome是存储索引的地方。

solr是一个java工程,里面是solrj的一些实现代码

solrWeb是一个web工程,主要是配置solr的一些配置项,这个只是一个辅助主项目的一个辅助web工程。

solr的大jar是solrweb工程里面的jar包解压之后直接放到solrwe下的webinfo下的lib下即可。

大家可以通过上一篇博文先进性配置,配置项的一些jar包,这个博文里面全部都有。下面来介绍一下solrj的一些接口的使用。

public static void main(String[] args) throws Exception {

String url="http://localhost:8080/solr/core1";//其实配置好solr之后,浏览器可以直接打开访问,注意要带上你配置访问的实例名字core1

CommonsHttpSolrServer server=new CommonsHttpSolrServer(url);//根据url得到服务器实例

//下面就是一些http的配置项,一般照写就行了

server.setSoTimeout(1000);

server.setConnectionTimeout(1000);

server.setDefaultMaxConnectionsPerHost(1000);

server.setMaxTotalConnections(1000);

server.setFollowRedirects(false);// defaults to false  

// allowCompression defaults to false.  

server.setAllowCompression(true);

server.setMaxRetries(1);// defaults to 0.  > 1 not recommended.

System.out.println(server);

 

//增加索引

SolrInputDocument doc1=new SolrInputDocument();//得到一个doc实例,这个实际上就是数据库里面的一行记录

//向doc里面增加数据。

第一个参数,id和name之类是在solrHome里面的schema.xml配置好的字段,要保持一致。

第二个参数,是字段的值

第三个参数,是字段的权重,如果权重越大,检索越优先。默认的权重是1.0

doc1.addField("id","1",1.0f);

doc1.addField("type","hehe",1.0f);

doc1.addField("name","黄俊华",1.0f);

//增加到server里面

server.add(doc1);

//如果增加的doc也就是索引的内容完全一样,solr默认增加不进去的。

//增加索引

SolrInputDocument doc2=new SolrInputDocument();

doc2.addField("id","2",1.0f);

doc2.addField("type","hehe",1.0f);

doc2.addField("name","黄俊华",1.0f);

server.add(doc2);

 

//增加索引

SolrInputDocument doc3=new SolrInputDocument();

doc3.addField("id","3",1.0f);

doc3.addField("type","hehe",1.0f);

doc3.addField("name","黄俊华",1.0f);

server.add(doc3);

 

//删除全部索引

*:*是全部匹配

// server.deleteByQuery("*:*");

 

//根据ID删除一个索引

这个ID是在索引里面的主键,在schema文件里面规定的。

// server.deleteById("1");

//提交,只有提交才是被全部写入到索引里面

server.commit();

 

 

 

//查询

SolrQuery query=new SolrQuery();

query.setQuery("*:*");//全查

query.setQuery("id:1");//查询ID为1的数据,里面对应的查询语句

 

query.addSortField("id",SolrQuery.ORDER.desc);//字段排序

query.addField("id");//要显示的查询字段ID

query.addField("name");

 

 

QueryResponse rsp=server.query(query);

SolrDocumentList docs=rsp.getResults();

System.out.println(docs.getNumFound());//输出命中个数

System.out.println(docs);

}

分享到:
评论

相关推荐

    solrj使用教程

    这个“solrj使用教程”很可能是为了帮助开发者了解如何使用SolrJ来连接、查询和管理Solr索引。下面将详细介绍SolrJ的主要功能和使用方法。 **1. 安装和导入** 首先,你需要通过Maven或Gradle等构建工具将SolrJ库...

    非常全面的solrj使用案例

    里面有非常详细的说明交你怎么使用solrj客户端来操作solrAPI

    SolrJ使用示例

    简单的SolrJ使用示例,包括文件:News.java(PO对应的class),SolrService.java(对solrJ的包装),SolrServiceHook.java(在查询前修改SolrQuery的行为)

    solr配置和solrJ的使用

    ### Solr配置与SolrJ使用详解 #### 一、Solr基本安装与配置 **1. 下载Solr** - **步骤说明**: 从Apache官方镜像站点下载Solr 1.4.1版本。 - **操作详情**: 访问链接`http://apache.etoak.com/lucene/solr/`,...

    SolrJ需要的jar包

    6. `json-smart-*.jar`:SolrJ使用此库进行JSON序列化和反序列化,处理Solr服务器返回的JSON数据。 7. 可能还需要根据你的具体项目需求,包含如`jackson-core`, `jackson-databind`, `jackson-annotations`等...

    1.4、solrj的使用_代码开始1

    ### SolrJ 使用详解 #### 一、环境搭建与初始化 在正式介绍如何使用SolrJ之前,我们首先需要确保已经正确地搭建好开发环境。根据提供的内容,环境搭建主要包含以下几个步骤: 1. **创建Java工程**:首先,我们...

    solr-config_solrj-demo.rar_DEMO_solr_solr的j

    总之,"solr-config_solrj-demo.rar_DEMO_solr_solr的j"这个DEMO是一个全面了解和实践Solr配置及SolrJ使用的宝贵资源,它将引导你逐步掌握如何在实际项目中有效地运用Solr进行全文检索和数据分析。通过深入学习和...

    solr详细配置教程与solrj的使用

    solr详细配置教程与solrj的使用

    solr-solrj-4.10.3.jar和solr-solrj-5.0.0.jar

    相反,如果项目需要利用Solr 5.x的新功能,或者已经升级到Solr 5.x,那么应使用5.0.0版本的SolrJ。 在实际开发中,SolrJ通过提供简单的Java接口,使得开发者可以方便地执行以下操作: 1. 创建和管理Solr核心...

    solr-solrj-6.1.0

    这个版本可能包含了该时期Solrj的所有特性和修复的bug,对于理解和使用当时的Solrj功能至关重要。 描述中提到,Solr是一个企业级搜索应用服务器,它通过HTTP服务接口提供XML格式的数据交换。这表明Solr设计为分布式...

    Java搜索服务Solr操作指南.pdf

    #### 3.1 SolrJ使用前配置 在Maven工程的pom.xml文件中添加SolrJ的依赖配置,以确保项目可以使用SolrJ提供的类和方法。 #### 3.2 添加文档 - 创建SolrServer对象,推荐使用HttpSolrServer类。 - 创建...

    Sample-SolrJ-Client:示例 SolrJ 客户端

    这个"Sample-SolrJ-Client"是一个示例项目,旨在帮助开发者了解如何有效地使用 SolrJ 进行索引、查询和其他操作。以下将详细阐述 SolrJ 的核心概念、功能及其在实际开发中的应用。 1. **SolrJ 简介** SolrJ 是 ...

    solr-solrj 5.0.0 demo

    在本文中,我们将深入探讨Solr-Solrj的使用、功能及其与自建Solr服务的集成,特别是涉及到中文分词的场景。 Apache Solr是一款流行的开源全文搜索引擎,提供高效的全文检索、文档分类、拼写建议等功能。Solr-Solrj...

    SolrJ6.3.0

    在使用 SolrJ 时,开发人员需要将这些库添加到项目的类路径中,以便能够调用 SolrJ 提供的各种类和方法。例如,可以通过 `SolrClient` 接口连接到 Solr 服务器,使用 `SolrInputDocument` 类来构建要索引的文档,...

    solrJ 需要的jar文件 (全)

    开发者可以使用SolrJ创建索引、查询Solr服务器、处理搜索结果以及执行其他Solr相关的任务。 - 使用SolrJ,开发者无需关心HTTP通信的细节,它封装了所有网络I/O,使得代码更简洁,更易于维护。 2. **JUnit-4.7.0**...

    java1.6源码-solrj.client:使用solr.solrjJava库将Java索引到Solr6.2.1的源代码

    SolrJ使用`SolrInputDocument`对象来表示待索引的文档。每个字段都由`Field`对象表示,如下所示: ```java SolrInputDocument doc = new SolrInputDocument(); doc.addField("id", "123"); doc.addField("title", ...

    solrj工具类封装

    solrj工具类封装,包括条件批量查询,批量增删改,分段修改。

Global site tag (gtag.js) - Google Analytics