关于solr的一些心得体会

本文分享了在使用Solr进行多表多entity配置时遇到的数据丢失问题及其解决方法,同时提供了集成Solr的公用性方法,使搜索多个不同对象时仅需一个方法实现。

关于solr的配置什么的在这里也就不多说了,这种文章很多,就说一些在使用中一些注意点吧。

1.solr多表多entity配置:

     不知道你是否也遇到过这样的问题,当测试的时候你使用一个表做测试,配置一个表对应的entity测试时数据是对的,但是当你配置了多个表的时候,问题就出现了,好像有些数据丢失了.......,当时我就郁闷了。郁闷为啥会出现这样的情况,后来想到了主键这个东西,估计是因为主键数据相同造成了数据覆盖。于是我想是否可以配置多个主键,结果好像是不行的。后来也不知道怎么想到的就这样处理了,反正能用就行了嘛。在每个entity的主键前面加上类别,以区分。因为每个entity的主键是不可能重复的,只有在不同的entity之间可能存在主键相同。处理如下:

<entity name="A" query="SELECT CONCAT('A',ID) as SOLRID FROM A">
			<field name="SOLRID" column="SOLRID" />
</entity>

这样一来及时不同表之间的id可能一样,但是在solr里面也不会一样了。


2.集成solr的公用性:

    如果要搜索多个不同的对象,是否就需要些多个方法,这个就太麻烦了吧,于是考虑是否有方式能让所有的搜索都使用一个方法呢。针对于我的情况我写了一个比较公用的方法。



初次使用solr一点东西供大家分享,当然许多功能也没用上,还有待深入了解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值