博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用spring-data-solr做solr客户端
阅读量:6850 次
发布时间:2019-06-26

本文共 1826 字,大约阅读时间需要 6 分钟。

        solr的客户端基本上只有一个,那就是solrj,spring-data-solr是在solrj的基础上做的封装,使统一成spring-data的风格

   官方网站:

    http://projects.spring.io/spring-data-solr/

   使用spring-data最简单的方式就是使用spring-boot,注意多个spring-data之间不能公用,由于之前我们同样使用了spring-data-jpa 做orm,

  这里要新创建一个项目进行使用spring-data-solr作为solr服务器的客户端,然后通过分布式进行协同使用。

  首先搭建spring-boot项目,具体参考另外一遍博客。

  添加依赖:

org.springframework.boot
spring-boot-starter-data-solr

  由于spring-boot是集中性的配置,所以在application.properties文件中添加以下配置:

  

# SOLR (SolrProperties)spring.data.solr.host=http://localhost:8983/solr/mark#spring.data.solr.zkHost=spring.data.solr.repositories.enabled=true

    这样就算是配置完成了

  

  使用spring-data-solr与使用spring-data-jpa几乎一毛一样:

  

public interface MarkSolrRepository extends SolrCrudRepository
{ @Query("value:?0") List
findAllByValue(String markey, Pageable pageable);}

       不过有一些区别:

  1.@Query中的是solr的语法,并且参数计数是从0开始的(spring-data-jpa是从1开始的)

  2.每个映射的实体类必须有@ID主键

  

@Entitypublic class SearchMark implements Serializable {    private static final long serialVersionUID = 1229830543809682342L;    @org.springframework.data.annotation.Id     private String id;// 唯一主键    @Field()    private String value;// 标签的值    @Field()    private int type;// 类型    @Field("datam_id")    private int datamId;// 数据id    @Field("create_time")    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08")    private Date createTime;// 创建时间

    注意@id是@org.springframework.data.annotation.Id

  

  其他用法参考:

  http://projects.spring.io/spring-data-solr/

  http://docs.spring.io/spring-data/solr/docs/1.0.0.RC1/reference/html/

  http://www.petrikainulainen.net/programming/solr/spring-data-solr-tutorial-crud-almost/?utm_source=tuicool&utm_medium=referral

  

 

转载于:https://www.cnblogs.com/lic309/p/5255057.html

你可能感兴趣的文章
JMM内存模型
查看>>
在ASP.NET中面向对象的编程思想
查看>>
Java IO(Java开发实战经典 第十二章读书笔记)
查看>>
FPGA跨时钟域设计
查看>>
XML约束之DTD
查看>>
JQuery事件
查看>>
让网站可以从根目录访问,但仍然可以放在一个文件夹里的方法
查看>>
POJ 3009 Curling 2.0 DFS
查看>>
hrabs的数据库session的修改
查看>>
wcf服务契约继承
查看>>
领域驱动设计概述
查看>>
JNDI新随笔
查看>>
综合练习:词频统计
查看>>
PE渲染引擎 二
查看>>
array 的方法
查看>>
samil添加if语句
查看>>
斯坦福的nlp学习
查看>>
centos 防火墙设置
查看>>
Lucene.net入门学习(结合盘古分词)(转载)
查看>>
我心中的核心组件(可插拔的AOP)~第三回 日志记录组件之log4net
查看>>