`
jnoee
  • 浏览: 68601 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

简化Hibernae Search的使用

 
阅读更多

Hibernate Search是基于Lucene的针对数据库数据数据进行全文索引的框架,其最大的优点是在对数据库数据进行操作同时自动维护Lucene索引文件,为开发人员节约大量的索引维护代码。开发人员需要基本掌握Lucene才能把Hibernate Search用起来,我们可以做一些工作让开发人员可以更加快速的将Hibernate Search应用起来,而不需要更多的去了解Lucene的知识。

 

一、首先实现一个FullTextCriteria的全文索引搜索条件构建器,具备以下的特性。

1. 默认根据业务实体上的全文索引配置,自动生成一个包含有标注了@Field注解的字段的MultiFieldQuery;如果有关联对象,同时需要包含关联对象上定义的@Field字段;这些可通过反射来自动获取。

2. 设置排序条件的接口,让开发人员可以方便的设置排序。

3. 设置必需条件的接口,让开发人员可以方便的设置简单的过滤条件。

4. 对查询字段调整的接口,让开发人员可以简单的在默认搜索的字段基础上方便的增加和移除查询字段。

5. 设置Lucene Query的接口,针对复杂条件可以自己构建Lucene查询条件,保留原生特性。

 

二、在泛型DAO中增加全文索引的搜索接口和分页搜索接口,传入FullTextCriteria作为搜索接口的参数,使开发人员只需要了解如何用FullTextCriteria构建全文搜索条件就可以快速的应用起全文搜索功能。

分享到:
评论

相关推荐

    Android 简化服务 Api,为了简化简化服务的使用,并使用 Kotlin 来提供简洁的 Api .zip

    Android 辅助功能 API中文 | EnglishAndroid 简化服务 Api,为了简化简化服务的使用,并使用 Kotlin 来提供简洁的 Api。由于4.0版本代码进行重构,之前接入器的项目需要修改import package,而且 implementation '...

    使用纹理特征简化网格算法(简化效果非常好)

    "使用纹理特征简化网格算法"是国外大学的一项研究,它着重于在简化过程中保护模型的纹理边界,以实现更好的简化效果。 纹理边界是3D模型中的一个重要元素,它们通常对应于物体表面的明显特征,如接缝、图案边缘或...

    ArcGIS简化面工具Bug修复工具

    此工具为ArcGIS简化面工具,适用于ArcGIS 10.0-ArcGIS 10.5,可用于对ArcGIS中自带简化线工具进行修复。 使用时,直接将 工具箱.tbx拖入ArcToolBox即可添加到ArcToolBox,或者在ArcToolBox中右键/添加工具箱 进行添加...

    osg模型文件精简工具V1.00_osg简化_osg格式文件_模型简化_osg_图像化界面_

    这意味着用户无需编写代码,只需通过直观的界面即可完成模型的导入、设置简化参数和导出简化后的模型。这样的设计使得非编程背景的艺术家和设计师也能轻松使用,提高了工具的易用性和普及性。 在实际应用中,模型...

    使用jQuery 简化Ajax 开发

    使用 jQuery 简化 Ajax 开发

    Easy-Es是一款简化ElasticSearch搜索引擎操作的开源框架,全自动智能索引托管

    Elasticsearch 国内顶尖elasticsearch搜索引擎框架es ORM框架,索引全自动智能托管,如丝般顺滑,与Mybatis-plus一致的API,屏蔽语言差异,开发者只需要会MySQL语法即可完成对Es的相关操作,零额外学习成本.底层采用...

    SSM框架与ElasticSearch 无缝链接 并提供查询工具类

    4. **使用工具类**:在业务代码中,通过工具类调用Elasticsearch的相关功能,例如搜索、插入、更新或删除数据。 5. **异常处理**:确保在操作Elasticsearch时捕获并处理可能出现的异常,保证系统的稳定运行。 6. *...

    使用简化实频进行电路设计的教科书

    《使用简化实频进行电路设计的教科书》是一本专为电路综合领域的工程师和学生设计的专业教材。书中深入探讨了简化实频技术在微波放大器和有源电路设计中的应用,旨在帮助读者理解和掌握这种高效的设计方法。 简化实...

    Embedded-elasticsearch:简化使用Elasticsearch创建集成测试的工具

    用于创建使用Elasticsearch的集成测试的小型实用程序。 它不使用Node而是下载指定版本的Elasticsearch并在单独的过程中启动它。 它还允许您安装所需的插件,这在使用NodeBuilder时是不可能的。 该实用程序已使用1.x...

    Elasticsearch java工具类

    总之,"Elasticsearch java工具类"项目是面向Elasticsearch 5.x版本,与SpringBoot深度集成的解决方案,通过自定义注解简化了mapping的创建,同时考虑了在分布式环境下的使用。对于那些希望快速搭建和使用Elastic...

    Mesh 网格简化

    6. **使用OpenGL渲染**:使用简化后的Mesh数据,通过OpenGL绘制3D模型。 学习这个源码,你可以深入理解如何利用编程实现Mesh简化,以及如何与OpenGL交互。这对于开发3D应用、游戏或者虚拟现实环境等具有极大的价值...

    arcgis10.1 简化面工具

    arcgis 10.1工具箱中简化面功能不能正常使用。这里采用的解决办法是使用modelbuilder来模拟一个简化面功能

    elasticsearch 5.4.0 maven依赖jar包

    "elasticsearch 5.4.0 maven 依赖jar包" 指的是在 Maven 项目中使用 Elasticsearch 5.4.0 版本时,需要的全部依赖库文件。这些 jar 包包括 Elasticsearch 核心库、X-Pack 插件以及其他相关的第三方库,例如 Lucene、...

    arcmap10.2简化面工具(含容差值)

    arcmap10.2 简化面 没法填写简化容差值

    ElasticSearch客户端工具

    这些工具极大地简化了对Elasticsearch集群的日常维护工作,为开发者和管理员提供了便利。 在众多的ElasticSearch客户端工具中,"ElasticHD-1.4"可能是一款专为Elasticsearch设计的可视化界面工具,其版本号为1.4,...

    引用fast-neural-style项目训练模型的简化使用demo,通过图像风格化处理实现艺术效果.zip

    引用fast-neural-style项目训练模型的简化使用demo,通过图像风格化处理实现艺术效果 引用fast-neural-style项目训练模型的简化使用demo,通过图像风格化处理实现艺术效果 引用fast-neural-style项目训练模型的简化...

    人工智能-项目实践-搜索引擎-SpringBoot+ElasticSearch全文搜索引擎

    在本项目实践中,我们将深入探讨如何使用Spring Boot和Elasticsearch构建一个全文搜索引擎。这是一个典型的人工智能应用,其中搜索引擎是关键组件,用于处理和检索大量数据。让我们逐一解析这个项目涉及的技术点。 ...

    log4net.ElasticSearch

    同时,如果需要在项目中使用这个库,需要按照文档指示进行安装和配置,以确保日志数据能够正确地流入Elasticsearch。 总的来说,log4net.ElasticSearch是.NET开发人员将日志集成到ELK Stack的有效工具,它简化了...

    springboot-elasticsearch-master.rar

    本项目"springboot-elasticsearch-master"就是将这两者完美融合,提供了基于SpringBoot的Elasticsearch API实现,旨在简化ES的使用,让开发者能够更便捷地进行数据查询、新增、删除以及批量操作。 首先,我们需要...

    Windows安装MySql简化版本,使用最小存储空间,满足最基础mysql学习使用

    Windows安装MySql简化版本,使用最小存储空间,满足最基础mysql学习使用。 压缩包内有5.7和8.0两个版本的mysql,内部包含安装脚本,可直接在cmd窗使用命令进行安装。 帮助学习mysql,降低学习mysql的成本。

Global site tag (gtag.js) - Google Analytics