solr的建立索引的方式通常有两种:1.在配置文件中设置数据库连接,直接建立索引;
2.在java程序中写定时器,进行建立索引。
本人采用的是后者,因为考虑到数据的安全和有效性处理。
具体的java代码:
public void testIndex() {
try {
List docs = new ArrayList();
SolrInputDocument doc = null;
//从数据库中获取数据
DbUtilTest dbUtil = new DbUtilTest();
List> list = new ArrayList>();
list = dbUtil.query();
for (Map 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();
}
}