一、异常
{
“responseHeader”:{
“status”:0,
“QTime”:0,
“params”:{
“q”:":",
“_”:“1607333741819”}},
“response”:{“numFound”:2,“start”:0,“docs”:[
{
“id”:“193805a6-21ca-445e-b7c7-dd9176b337a0”,
“version”:1685411404248514560},
{
“id”:“caaa2817-e2e9-42bc-af56-3ff6ab7c121d”,
“version”:1685411575785062400}]
}}
二、原因
以下是我初次使用solr时遇见的错误,有的错误控制台可以直接看到的。
1、配置文件出错
applicationContext-solr.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:solr="http://www.springframework.org/schema/data/solr"
xsi:schemaLocation="http://www.springframework.org/schema/data/solr
http://www.springframework.org/schema/data/solr/spring-solr.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- solr服务器地址 -->
<!--相当于一个提供者-->
<solr:solr-server id="solrServer" url="http://ip地址:端口号/solr/core的名字(随便取collectionHe)" />
<!-- solr模板,使用solr模板可对索引库进行CRUD操作 -->
<bean id="solrTemplate" class="org.springframework.data.solr.core.SolrTemplate">
<!--构造注入-->
<constructor-arg ref="solrServer" />
</bean>
</beans>
PS:core是solr的特有概念,每个core是一个查询数据、索引等的集合体,你可以把它想象成一个独立数据库
2、pojo上的注解出错
比如将@Field注解中的值写错了,与managed-schema中的配置不一致
java代码
managed-schema配置
3、导入数据出错
比如我将<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" />
的类型想当然的改为plong(java中的Long)
4、上传到solr时,方法调错了(我就是这个原因)
上传多条数据是saveBeans()、一条是saveBean()