Lucene写入和更新操作:
if (id.equals("")) {
2 this.goodsService.save(goods);
3
4 String goods_lucene_path = System.getProperty("user.dir")
5 + File.separator + "luence" + File.separator + "goods";
6 File file = new File(goods_lucene_path);
7 if (!file.exists()) {
8 CommUtil.createFolder(goods_lucene_path);
9 }
10 LuceneVo vo = new LuceneVo();
11 vo.setVo_id(goods.getId());
12 vo.setVo_title(goods.getGoods_name());
13 vo.setVo_content(goods.getGoods_details());
14 vo.setVo_type("goods");
15 vo.setVo_store_price(CommUtil.null2Double(goods
16 .getStore_price()));
17 vo.setVo_add_time(goods.getAddTime().getTime());
18 vo.setVo_goods_salenum(goods.getGoods_salenum());
19 LuceneUtil lucene = LuceneUtil.instance();
20 LuceneUtil.setIndex_path(goods_lucene_path);
21 lucene.writeIndex(vo);
22 } else {
23 this.goodsService.update(goods);
24
25 String goods_lucene_path = System.getProperty("user.dir")
26 + File.separator + "luence" + File.separator + "goods";
27 File file = new File(goods_lucene_path);
28 if (!file.exists()) {
29 CommUtil.createFolder(goods_lucene_path);
30 }
31 LuceneVo vo = new LuceneVo();
32 vo.setVo_id(goods.getId());
33 vo.setVo_title(goods.getGoods_name());
34 vo.setVo_content(goods.getGoods_details());
35 vo.setVo_type("goods");
36 vo.setVo_store_price(CommUtil.null2Double(goods
37 .getStore_price()));
38 vo.setVo_add_time(goods.getAddTime().getTime());
39 vo.setVo_goods_salenum(goods.getGoods_salenum());
40 LuceneUtil lucene = LuceneUtil.instance();
41 LuceneUtil.setIndex_path(goods_lucene_path);
42 lucene.update(CommUtil.null2String(goods.getId()), vo);
43 }
Lucene查询:
LuceneResult pList = lucene.search(keyword,
CommUtil.null2Int(currentPage),
CommUtil.null2Int(store_price_begin),
CommUtil.null2Int(store_price_end), null, sort);
for (LuceneVo vo : pList.getVo_list()) {
Goods goods = this.goodsService.getObjById(vo.getVo_id());
pList.getGoods_list().add(goods);
}
CommUtil.saveLucene2ModelAndView("goods", pList, mv);
public static void saveLucene2ModelAndView(String type, LuceneResult pList, ModelAndView mv)
{
if (pList != null) {
if (type.equals("goods")) {
mv.addObject("objs", pList.getGoods_list());
}
if (type.equals("store")) {
mv.addObject("objs", pList.getStore_list());
}
mv.addObject("totalPage", Integer.valueOf(pList.getPages()));
mv.addObject("pageSize", Integer.valueOf(pList.getPageSize()));
mv.addObject("rows", Integer.valueOf(pList.getRows()));
mv.addObject("currentPage", new Integer(pList.getCurrentPage()));
mv.addObject(
"gotoPageFormHTML",
showPageFormHtml(pList.getCurrentPage(),
pList.getPages()));
}
}