1.1.1 按主键查询

public  void  testFindOne(){
 
TbItem  item  =  solrTemplate.getById(1,  TbItem.class); System.out.println(item.getTitle());
}

1.1.1 按主键删除

@Test
 
public  void  testDelete(){ solrTemplate.deleteById("1"); solrTemplate.commit();
}

1.1.1 分页查询 首先循环插入 100 条测试数据

@Test
 
public  void  testAddList(){ List<TbItem>  list=new ArrayList();
 
 
for(int  i=0;i<100;i++){ TbItem  item=new  TbItem(); item.setId(i+1L);
item.setBrand("华为");
 
item.setCategory("手机"); item.setGoodsId(1L);
item.setSeller("华为 2 号专卖店");
 
item.setTitle("华为 Mate"+i);
 
item.setPrice(new  BigDecimal(2000+i)); list.add(item);
}
 
 
 
solrTemplate.saveBeans(list); solrTemplate.commit();
}

编写分页查询测试代码:

@Test
 
public  void  testPageQuery(){
 
Query  query=new  SimpleQuery("*:*");
 
query.setOffset(20);//开始索引(默认 0)
 
query.setRows(20);//每页记录数(默认 10)
 
ScoredPage<TbItem>  page  =  solrTemplate.queryForPage(query,  TbItem.class);
 
System.out.println("总记录数:"+page.getTotalElements()); List<TbItem>  list  =  page.getContent();
 
showList(list);
 
}
 
//显示记录数据
private  void  showList(List<TbItem>  list){
 
for(TbItem  item:list){
 
System.out.println(item.getTitle()  +item.getPrice());
 
}
 
}

1.1.1 条件查询 Criteria 用于对条件的封装:

@Test
 
public  void  testPageQueryMutil(){
 
Query  query=new  SimpleQuery("*:*");
 
Criteria  criteria=new  Criteria("item_title").contains("2"); criteria=criteria.and("item_title").contains("5"); query.addCriteria(criteria);
//query.setOffset(20);//开始索引(默认 0)
 
//query.setRows(20);//每页记录数(默认 10)
 
ScoredPage<TbItem>  page  =  solrTemplate.queryForPage(query,  TbItem.class);
 
System.out.println("总记录数:"+page.getTotalElements()); List<TbItem>  list  =  page.getContent();
 
showList(list);
 
}

1.1.1 删除全部数据

@Test
 
public  void  testDeleteAll(){
 
Query  query=new  SimpleQuery("*:*"); solrTemplate.delete(query); solrTemplate.commit();
}