文档章节

solr4.7开发实践 1——建立索引

一枚Sir
 一枚Sir
发布于 2014/05/06 16:14
字数 191
阅读 767
收藏 0

solr的建立索引的方式通常有两种:1.在配置文件中设置数据库连接,直接建立索引;

                                                2.在java程序中写定时器,进行建立索引。

        本人采用的是后者,因为考虑到数据的安全和有效性处理。

        具体的java代码:

public void testIndex() {
  try {
   List<SolrInputDocument> docs = new ArrayList<SolrInputDocument>();
   SolrInputDocument doc = null;
   
   //从数据库中获取数据
   DbUtilTest dbUtil = new DbUtilTest();
   List<Map<String, String>> list = new ArrayList<Map<String,String>>();
   list = dbUtil.query();
   
   for (Map<String, String> map: list) {
   //建立document对象
    doc = new SolrInputDocument();
    doc.addField("id", map.get("id"));
    doc.addField("name", map.get("name"));
    doc.addField("author", map.get("author"));
    doc.addField("region", map.get("region"));
    doc.addField("theme", map.get("theme"));
    doc.addField("create_time", map.get("create_time"));
    doc.addField("content", map.get("content"));
    
    docs.add(doc);
   }
   //执行添加
   server.add(docs);
   server.commit();
  } catch (MalformedURLException e) {
   e.printStackTrace();
  } catch (SolrServerException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }
 }

    

© 著作权归作者所有

一枚Sir
粉丝 119
博文 209
码字总数 350904
作品 0
朝阳
架构师
私信 提问
加载中

评论(1)

solr4.7开发实践 6——拼写检查

①拼写检查不同于其他域,它在建立索引时需要分词,但是检索时不需要分词,所以要建立一个特殊的域,以供拼写检查: 在schema.xml文件里设置所需的拼写检查域都有哪些字段: <field name="s...

一枚Sir
2014/05/06
2.7K
6
solr4.7开发实践 2——高亮显示

第一种方式是solrj操作: public SolrDocumentList query(String str) { SolrQuery query = new SolrQuery(str); query.setHighlight(true);//开启高亮功能 query.addHighlightField("name,......

一枚Sir
2014/04/24
1K
2
solr4.7开发实践 3——分组查询facet

solr将以导航为目的的查询结果称为facet. 它并不会修改查询结果信息, 只是在查询结果上根据分类添加了count信息, 然后用户根据count信息做进一步的查询, 比如淘宝的查询列表中, 上面会表示不...

一枚Sir
2014/04/15
2.9K
0
让Oracle索引Null列

1.建立环境 create table t1 (id int,name varchar(10),age int); create table t2 (id int,name varchar(10),age int); insert into t1 values (1,’abc’,33); insert into t1 values (2,......

长平狐
2012/08/22
93
0
Solr4.7---Field、CopyField、DynamicField

Field: Field就是一个字段,定义一个Field很简单: 基本上属性也和FieldType类似,他的属性会覆盖掉FieldType的同名属性。 CopyField(本段内容直接从solr中文网copy而来): 你可能想让doc...

一枚Sir
2014/04/21
725
1

没有更多内容

加载失败,请刷新页面

加载更多

Leetcode PHP题解--D118 350. Intersection of Two Arrays II

D118 350. Intersection of Two Arrays II 题目链接 350. Intersection of Two Arrays II 题目分析 返回给定两个数组的交集。 思路 从数量较多的那个数组开始去另一个数组寻找是否元素存在,...

skys215
13分钟前
1
0
从源码上分析Android View保存数据状态

在Android开发旅途中,经常会遇到系统控件无法满足我们的视觉,交互效果,这个时候我们常常需要自己自定义控件来满足我们的需求。在这个开发探索过程中,我们不可避免得遇到View要保存状态信...

shzwork
14分钟前
2
0
请问AD603AQ和AD603AR有什么区别?

  AD603AQ和AD603AR只是在封装上的区别,前者是双列直插式,后者是贴片式,AD603A系列的温度都是在—40摄氏度到+85摄氏度之间,AD603还有一个系列是AD603S,它的温度是在—55摄氏度到+125摄...

仙溪
15分钟前
1
0
Linux /etc/profile 配置文件修改

1. 执行命令: vi /etc/profile 去类似windows 配置环境变量, 2.修改完,立即生效命令: source /etc/profile

kuchawyz
16分钟前
2
0
对于小白来说素描怎么入门?怎么学习?

素描初学者怎样入门?初学者怎样才能画好素描绘画?画好素描绘画有哪些技巧?想必这些问题都是绘画初学者们比较伤脑筋的问题,那么初学者到底怎样才能画好素描绘画呢?今天收集整理了关于素描...

huihuajiaocheng
17分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部