hibernate_search_常用注解

Hibernate Search 的常用注解

1. @Indexed<wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt; index指定索引名称</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br> 2. @Field</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt; name 指定当前属性在LuceneDocument中存储的名称,默认为属性名</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt; store 指定当前属性是否被存储在Luceneindex中,可选值为:</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">1) Store.YES</span><wbr><span style="color:#3333FF">占用大量的索引空间,支持"投影(projection)"</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">2) Store.COMPRESS压缩方式,消耗大量CPU</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">3) Store.NO (default)</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt; index指定元素索引方式和信息存储类型,可选值为:</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">1) Index.NO不索引,只有通过设置store才可以访问其内容</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">2) Index.TOKENIZED (default)使用analyzer</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">3) Index.UN_TOKENIZED不使用analyzer</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">4) Index.NO_NORMS不存储正常化数据</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">是否采用分词可依据,是要查询数据本身还是它所包含的内容(文字);</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">用来排序的域不需要分词。</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt; termVector检索词频</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">1) TermVector.YES</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">2) TermVector.NO(default)</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">3)TermVector.WITH_OFFSETS</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">4)TermVector.WITH_POSITIONS</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">5)TermVector.WITH_POSITION_OFFSETS</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt;indexNullAs</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">1)Field.DO_NOT_INDEX_NULL</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">通过hibernate.search.default_null_token指定,默认为_null_</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">查询时使用相同的分词来查找空值,建议Index.UN_TOKENIZED时使用</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">2) Field.DEFAULT_NULL_TOKEN(default)</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt; boost 用法形如:boost=@Boost(2f),详见@Boost</span><wbr><span style="color:#3333FF"><br> 3. @NumericField</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> @Field的联合注解,用于Integer, Long,Float和Double属性,索引时采用字典树结构(Triestructure).</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> Lucene将此API标记为experimental,未来版本未必支持。HibernateSearch将尽量掩盖底层的API变化,但也未必能有效保证。</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt;forField</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> -&gt; precisionStep(default值4)</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br> 4. @DocumentId</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF">用于保证索引实体的单一性。必须存储而且必须不能被分词。采用JPA方式时,如果指定了@Id则不再需要标注该注解。</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br> 5. @Fields</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF">同一个域采用不同的索引策略。需要为每个Field指定name属性(非强制).</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF">当使用@Fields时,@Field将支持两个有用的属性:</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">-&gt; analyzer为每个field定义@Analyzer而非为属性定义</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">-&gt; bridge</span><wbr><span style="color:#3333FF">每个field定义@FieldBridge而非为属性定义</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br> 6. @IndexedEmbedded</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF">对象有组合关系时使用。</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"> -&gt; depth关联的深度,存在循环的依赖时使用。</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"> -&gt; prefix索引fields的前缀,默认为"属性名.",如address.city中的"address."</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"> -&gt;targetElement被标注的域不是实际对象类型(如声明类型为接口)时使用,用来指定实际对象类型</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> 关联对象会自动被设为@Indexed</span><wbr><span style="color:#3333FF"><br> 7. @ContainedIn</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"> 双相关联的对象中,另一方配合@IndexedEmbedded使用,保证Lucenedocument的联动更新。</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF">当前类被用JPA方式标注为@Embeddable时不需要使用@ContainedIn</span><wbr><span style="color:#3333FF"><br> 8. @Boost</span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF">静态索引加速。与被索引实体的运行时状态无关。</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"> 1)可用在@Field的boost属性中、方法级、类级</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"> 2)不同方式指出的加速系数会累积,不能重复使用。如</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">@Field(<a href="mailto:boost=@Boost%281.5f">boost=@Boost(1.5f</a>))</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">@Boost(2f)</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">public String getSummary() { return summary;}</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF">则summary系数为3,比普通域重要3倍</span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"><br></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"></span><wbr><span style="color:#3333FF"> 3)加速系数的指定并非精确的,可用来标注相对重要的实体或域。</span><wbr style="color:#3333FF"><span></span></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值