代码地址: https://gitee.com/shaojiepeng/wsm-lucene
wsm-lucene
一个简单的Lucene工具类,通过注释的方式来配置构建索引的字段。提供新建索引、查找、删除、更新方法,支持分页。
所需jar包
- lucene-core:2.4.0
- lucene-analyzers:2.4.1
- commons-logging:1.2
背景
以前在做某个feature的时候,鉴于存储在DB中的数据量过大,故使用Lucene来优化查找性能。 相信大家在某些场景下会把DB中的数据读出来,建索引来优化查找。那么这个工具类就比较适合这些场景了。
如何使用
从附件中下载jar包直接导入到项目中,或者下载此Maven项目的源码,使用项目依赖的方式导入你的项目。
- 通过注释的方式配置需要构建索引的model类
**@IndexClass** :注释,说明此model类需要构建索引
**indexDirPath** :索引所存放的物理位置,如:"D:/Index"
**@IndexField** :注释,说明此字段需要构建索引
**fieldStore** :Lucene中的Field.Store同义,不懂请自行查询资料
**fieldIndex** :Lucene中的Field.Index同义,不懂请自行查询资料
- 创建索引
IndexService indexService = new IndexServiceImpl();
/** 构建索引的接口
* List:model的集合
* Class: model的class
*
* return boolean
**/
indexService.buildIndex(List, Class)
3.查找
ArrayList<SearchParamModel> searchParams = new ArrayList<>();
/**添加查询的条件,如果有多个查询条件,则添加SearchParamModel
* fieldName:需要查找的字段,即model中的成员变量
* fieldValue:需要查找字段的值,这个不解释
* BooleanType:Lucene中BooleanClause.Occur值,不懂请自行查询资料
**/
searchParams.add(new SearchParamModel(fieldName, fieldValue, BooleanType));
IndexService indexService = new IndexServiceImpl();
/** 查询的接口
* searchParams:不解释
* Class: model的class
*
* return model的集合
**/
List objs = indexService.search(searchParams, Class);
IndexService中还支持update, delete和分页查找的方法,请自行查阅代码。
觉得不错,请点个赞吧。
相关推荐
根据提供的信息,我们可以推断出该文档主要涉及的是WSM-315主控板的电路设计图及相关组件...总结来说,WSM-315 主控板是一个高度集成且功能强大的电路板,它通过精心设计的电路布局和选材,确保了设备的可靠性和性能。
根据提供的信息,我们可以推断出这是一份关于WSM-315整机的设计文档或电路图的一部分。尽管文本信息非常有限且不完整,但从已有的数据中,我们可以提取一些关键的技术信息和知识点。 ### 1. 整体概述 WSM-315整机...
一份非常好的电焊机原理图百分百正确,内部资料
根据提供的信息,我们可以推断出该文档主要涉及的是电子电路设计和元件应用,...这些元件共同构成了一个复杂而精细的电路系统,用于实现特定的功能。对于从事电子工程设计的专业人士来说,这份文档具有很高的参考价值。
总结来说,"lcd.rar"压缩包提供的资料涵盖了WSM-6866B COG12864和WOM12864这两款IIC接口LCD的驱动源码及相关说明,对于想要在单片机项目中使用IIC接口LCD的开发者来说,这是一个宝贵的资源。通过学习和理解这些源码...
小米wsm工具箱 小米专用框架 神器 可修改很多
在IT领域,尤其是服务器管理和Web开发中,WSM(Windows Service Manager)是一个重要的工具。WSM是一个专门为PHP开发的扩展,其核心功能是允许开发者通过PHP脚本对Windows操作系统中的服务进行管理。这个开源项目为...
Web-Based System Manager (WSM) 是IBM为AIX操作系统提供的一种基于Web的管理工具,它允许用户通过远程计算机对Power系列机器进行管理。WSM的主要优势在于其便捷性,用户无需在目标系统上本地操作,即可完成系统的...
向量空间模型Web挖掘和搜索课程实践项目在实践中建立向量空间模型,以通过用户查询检索相关性最高的前10个文档。如何运行代码启动环境pip install -r requirements.txt 跑步python main.py --query {query_str} 注意...
假设一家公司希望开发一个移动应用,该应用需要显示天气预报信息。这家公司可以选择自己开发一套完整的天气预报系统,但这需要大量的时间和资源。相反,通过使用像OpenWeatherMap这样的第三方API,该公司可以直接在...
"H3C iMC WSM无线业务管理组件" H3C iMC WSM无线业务管理组件是基于iMC智能管理平台的无线业务管理解决方案,旨在为管理员提供一体化的有线无线管理能力。该组件可实现无线网络的集中管理、监控和维护,满足越来越...
WSM批量Ping For Excell是一个基于Excel开发的批量ping工具,其最主要的功能是批量ping ip地址检测网络连通状况,支持实时显示延迟,支持自动循环ping,缺点是必须运行在Excel中,还需要打开Excel宏功能,不安装...
4. **变压器与电感**:虽然逆变焊机减少了传统大型变压器的使用,但在WSE200模型中,可能仍会包含一个小型的调整变压器和电感器,用于进一步调节电流和稳定焊接过程。电感器可以平滑电流波形,防止电流突变,确保...
它允许管理员通过Web界面来管理和配置AIX系统,提供了一个图形化管理环境,简化了系统管理的复杂性。WSM是AIX操作系统5.3版本以及后续版本支持的管理工具,为用户提供了远程管理和配置系统的便捷方式。 从描述中...
iMC WSM是一个强大的无线网络管理系统,它结合了iMC和华三的无线设备,旨在为用户提供高效、灵活的无线网络部署和管理。 **1. 组网需求** 在配置WLAN时,首先要明确组网需求。这通常涉及到以下几个方面: - 覆盖...
根据提供的信息,我们可以推断这份文档“WSM200整机.pdf”主要涉及的是一个电子设备或系统的电路设计及元件列表。虽然标题、描述和标签并没有提供具体的信息,但从部分展示的内容来看,该文档包含了详细的电路图以及...
- **电阻器**:例如“1KVR222RR33W/10K”表示一个标称值为1kΩ的电阻器,其精度为±1%,功率等级为1/8瓦特。 - **电容器**:如“C1102/630V”代表一个容量为110pF,耐压为630V的电容器。 - **二极管**:例如“IN4007...
自动运行格式(可多个同时运行): WSMTelnet IP地址,端口号,登陆用户名,密码,相关指令集文件 自动运行时特殊指令说明(手工操作时无效): #\换屏,tty08# 换屏至tty08,可选范围01~12 #\清屏,tty10# 清除第tty10内容,可...
基于miui系统框架 适合改状态栏等一系列需要框架才能完成的想法
- WSM-EX 支持最多八个插槽的配置,并增强了 RAS(Reliability, Availability, and Serviceability)特性。 #### Intel Xeon 处理器 E7-8800/4800/2800 v2 产品家族 (IVB-EX) - **IVB-EX** 指 Ivy Bridge-EX,这是...