Mapping Solr Converter
来源:互联网 发布:江苏国税普通发票软件 编辑:程序博客网 时间:2024/06/09 22:12
Mapping Solr Converter
MappingSolrConverter
allows you to register custom converters for your SolrDocument
and SolrInputDocument
as well as for other types nested within your beans. The Converter is not 100% compartible with DocumentObjectBinder
and @Indexed
has to be added with readonly=true
to ignore fields from beeing written to solr.
public class Product { @Field private String simpleProperty; @Field("somePropertyName") private String namedPropery; @Field private List<String> listOfValues; @Indexed(readonly = true) @Field("property_*") private List<String> ignoredFromWriting; @Field("mappedField_*") private Map<String, List<String>> mappedFieldValues; @Dynamic @Field("dynamicMappedField_*") private Map<String, String> dynamicMappedFieldValues; @Field private GeoLocation location;}
Taking a look as the above MappingSolrConverter
will do as follows:
simpleProperty
<field name="simpleProperty">value</field>
namedPropery
<field name="somePropertyName">value</field>
listOfValues
<field name="listOfValues">value 1</field>
<field name="listOfValues">value 2</field>
<field name="listOfValues">value 3</field>
ignoredFromWriting
//not written to document
mappedFieldValues
<field name="mapentry[0].key">mapentry[0].value[0]</field>
<field name="mapentry[0].key">mapentry[0].value[1]</field>
<field name="mapentry[1].key">mapentry[1].value[0]</field>
dynamicMappedFieldValues
<field name="'dynamicMappedField_' + mapentry[0].key">mapentry[0].value[0]</field>
<field name="'dynamicMappedField_' + mapentry[0].key">mapentry[0].value[1]</field>
<field name="'dynamicMappedField_' + mapentry[1].key">mapentry[1].value[0]</field>
location
<field name="location">48.362893,14.534437</field>
To register a custom converter one must add CustomConversions
to SolrTemplate
initializing it with own Converter
implementation.
<bean id="solrConverter" class="org.springframework.data.solr.core.convert.MappingSolrConverter"><constructor-arg><bean class="org.springframework.data.solr.core.mapping.SimpleSolrMappingContext" /></constructor-arg><property name="customConversions" ref="customConversions" /></bean><bean id="customConversions" class="org.springframework.data.solr.core.convert.CustomConversions"><constructor-arg><list><bean class="com.acme.MyBeanToSolrInputDocumentConverter" /></list></constructor-arg></bean><bean id="solrTemplate" class="org.springframework.data.solr.core.SolrTemplate"><constructor-arg ref="solrClient" /><property name="solrConverter" ref="solrConverter" /></bean>
- Mapping Solr Converter
- Converter
- Converter
- Converter
- Mapping
- Mapping
- Mapping
- Converter Tutorial
- ASCII Converter
- Solr
- solr
- solr
- solr
- solr
- solr
- Solr
- solr
- solr
- loadrunner的学习
- 【密码学】C语言实现AES核心步骤
- LeetCode-矩阵旋转
- 1064. 朋友数(20)
- RAID--独立冗余磁盘阵列
- Mapping Solr Converter
- (二十二)Animator 源码分析
- Codeforces Round #363 (Div. 2) C Vacations
- 回顾大一·C语言编程11.4(3)(4)+12.1(1)+12.1(2)①②+实验12.1(3)+12.2+12.3
- 丢失libiconv-2.dll解决办法以及无法定位输入点libiconv-2.dll到动态链接库
- git 到gitub中出现的问题
- CCS7.2软/硬件断点设置,精确计算代码运行时间及定时器定时时间验证(适用于C28x芯片)
- mysql 加载本地数据文件
- QEMU 运行ARM Linux Kernel