11.5.2.Query String-Range Queries Extensions
Compass simplifies the usage of range queries when working with dates and numbers. When using numbers it
is preferred to store the number if a lexicography correct value(such as 00001, usually using the format
attribute).When using range queries, Compass allows to execute the following query:value:[1 T O3] and
internally Compass will automatically translate it to value:[0001 TO 0003].
When using dates, Compass allows to use several different formats for the same property.The format of the
Date object should be sortable in order to perform range queries. This means, for example, that the format
attribute should be: format="yyyy-MM-dd".This allows for range queries such as:date:[1980-01-01 TO
1985-01-01] to work. Compass also allows to use different formats for range queries. It can be configured
within the format configuration: format="yyyy-MM-dd||dd-MM-yyyy"(the first format is the one used to store
the String). And now the following range query can be executed: date:[01-01-1980 TO 01-01-1985].
Compass also allows for math like date formats using the now keyword.For example: "now+1year" will
translate to a date with a year from now. For more information please refer to the DateMathParser javadoc.
============================
例如 我搜索的范围为
1-100 101-200 。。。 1001-10000
建立索引的时候统一用 00001-00100 00101-00200 。。。 01001-10000格式
<property name="PersonCost">
<meta-data index="un_tokenized" converter="personCostPropertyConverter" format="000000">PersonCost</meta-data>
</property>
format是建立索引的时候统一设置为00000格式,这个和DecimalFormat("00000").format()类似
这样的话,例如我的属性为 301,存入索引的时候存入的就是00301
同时在前台显示的时候,我们必须转换回来
我们取的属性为00301,但在前台我们要显示的属性为301,这里我们就必须通过转换器转换回来。
我写了个转换器personCostPropertyConverter是继承AbstractBasicConverter
重写doFromString方法就可以了
关于如何配置转换器和怎么写,具体可以参考 莫多泡泡的
http://jdkcn.com/entry/the-better-revolution-about-the-compass-lucene-highlight.html
============================
另外需要注意的是 搜索的时候 如果你的搜索条件是 1-100
请用DecimalFormat("00000").format()转换成 00001-00100
分享到:
相关推荐
企业搜索引擎是现代数字化企业不可或缺的一部分,它们为用户提供高效、准确的信息检索体验。在各种搜索引擎方案中,Apache Solr因其强大的功能和优秀的可扩展性,已经成为众多企业的首选。本教程将详细介绍Solr的...
Elasticsearch 的创始人在开发一个菜谱搜索引擎时,发现 Lucene 复杂难用,于是创建了 Compass,一个简化 Lucene 使用的框架。随着需求的增长,他创建了 Elasticsearch,旨在提供分布式、易于使用的搜索和分析平台...
文中特别提到了两种传感器:惯性测量单元(Inertial Measurement Unit, IMU)和数字磁罗盘(Digital Magnetic Compass)。 ##### 惯性测量单元(IMU) IMU是一种可以测量物体三轴线加速度以及三个旋转方向角速度的...
- **数字类型支持**:提供对数字类型的良好支持,便于实现排序和范围查询。 - **动态分组**:支持对搜索结果进行动态分组,提高结果的组织性和可读性。 ##### 2.7 缓存机制 - **可配置的缓存**:支持配置查询结果、...
Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码,系统相关,数字签名,数字证书 Java 数字签名、数字证书的相关实例。 关于数字签名:产生RSA密钥对(myKeyPair),得到RSA密钥对,产生Signature对象,对用...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
它在搜索的同时可以下载遇到的链接所指向的所有的或预定义的范围的内容。 WebSocket协议的Java实现 WebSocket4J WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。...
**cdedit**: 打开编辑器以修改MATLAB的搜索路径。 **cdf2rdf**: 将共轭复对角矩阵转换为实对角矩阵。 **ceil**: 向上取整。 **cell**: 创建单元数组。 **cell2struct**: 将单元数组转换为结构体。 **celldisp**...
Tigerbooks致力于解决校园内图书资源的高效流通问题,提供了一个简洁易用的界面,供用户发布、搜索和交换图书。用户可以发布自己不再需要的书籍信息,同时查找他人发布的书籍,实现图书的零成本交换。此外,平台还...