| | |
| | | import org.apache.solr.client.solrj.response.UpdateResponse; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.dao.InvalidDataAccessApiUsageException; |
| | | import org.springframework.data.domain.Sort; |
| | | import org.springframework.data.solr.core.SolrTemplate; |
| | | import org.springframework.data.solr.core.query.Criteria; |
| | |
| | | filter.setKey(""); |
| | | } |
| | | logger.info(filter.getKey() + "#" + page); |
| | | String key = filter.getKey();//.replace(" ", "\\ "); |
| | | Query query = null; |
| | | if (!StringUtil.isNullOrEmpty(filter.getKey())) { |
| | | //solr精准检索需要带引号 |
| | | query = new SimpleQuery(new Criteria("nameStr").startsWith(filter.getKey()).or("actors").expression("\"" + filter.getKey() + "\"")); |
| | | try { |
| | | query = new SimpleQuery(new Criteria("nameStr").startsWith(key).or("actors").expression("\"" + key + "\"")); |
| | | } catch (InvalidDataAccessApiUsageException e) { |
| | | query = new SimpleQuery(new Criteria("name").expression("\""+key+"\"")); |
| | | } |
| | | |
| | | } else if (!StringUtil.isNullOrEmpty(filter.getActor())) { |
| | | query = new SimpleQuery(new Criteria("actors").expression("\"" + filter.getActor() + "\"")); |
| | | } else if (!StringUtil.isNullOrEmpty(filter.getDirector())) { |
| | |
| | | } |
| | | |
| | | public List<String> getSuggestKeyList(String key) { |
| | | Query query = new SimpleQuery(new Criteria("nameStr").startsWith(key)); |
| | | Query query = new SimpleQuery(new Criteria("nameStr").expression(key+"*")); |
| | | /** 设置分页开始记录数(第一页) 默认0 */ |
| | | query.setOffset(0); |
| | | /** 设置每页显示记录数,默认10 */ |