对于使用具有多核支持的存储库使用 solr 设置 spring 数据是否有详细而完整的解释?
问问题
1024 次
1 回答
4
spring-data-solr 需要使用的唯一依赖项是
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-solr</artifactId>
<version>1.5.2.RELEASE</version>
</dependency>
它下载 solrj 依赖项,并且不能被更高版本的 solrj 覆盖。此外,在 EmbeddedSolrServer 上使用 HttpSolrServer 总是更可取的,这是我们将使用的。
配置类应如下所示:
@Configuration
@EnableSolrRepositories(value = "com.package.",multicoreSupport = true)
public class SolrConfig
{
@Bean
public SolrServer solrServer() throws Exception
{
HttpSolrServerFactoryBean f = new HttpSolrServerFactoryBean();
f.setUrl("http://localhost:8983/solr");
f.afterPropertiesSet();
return f.getSolrServer();
}
@Bean
public SolrTemplate solrTemplate(SolrServer solrServer) throws Exception
{
return new SolrTemplate(solrServer());
}
}
文档实体应包含有关它们属于哪个核心的信息
@SolrDocument(solrCoreName = "core1")
public class Document1
{
@Id
@Field
private String id;
/**other attributes**/
}
另一个文件应该是
@SolrDocument(solrCoreName = "core2")
public class Document2
{
@Id
@Field
private String id;
/**other attributes**/
}
现在最好的部分是你已经完成了。简单地以普通的方式设置存储库就可以了
public interface SolrCore1Repository extends SolrCrudRepository<Document1,String>
{
// optional code
}
另一个回购就像
public interface SolrCore2Repository extends SolrCrudRepository<Document2,String>
{
// optional code
}
一旦 solr 在指定的 url 上运行并且它具有根据 pojo 的字段,你就完成了。
于 2016-02-13T11:54:19.950 回答