本文主要是介绍Bean-Searcher的使用提高查询效率,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Bean Searcher官网
添加pom.xml依赖
<dependency><groupId>cn.zhxu</groupId><artifactId>bean-searcher-boot-starter</artifactId><version>4.2.9</version>
</dependency>
在controller层注入
@Autowiredprivate MapSearcher mapSearcher;@Autowiredprivate BeanSearcher beanSearcher;@GetMapping("findCustomer")public ResponseEntity<?> findCustomer() {HashMap<String, Object> map = new HashMap<>();map.put("phone","2");mapSearcher.searchList(CustomerOne.class, map);List<CustomerOne> customerOnes = beanSearcher.searchList(CustomerOne.class, map);return ResponseEntity.ok().body(customerOnes);}
entity实体类
@Data
@TableName("customer")
@SearchBean(tables="customer",autoMapTo = "customer")
public class CustomerOne {private String id;private String phone;private String address;}
SQL 日志
logging:level:cn.zhxu.bs: DEBUG
传参条件可以查看 Bean Searcher官网的开始检索
有了实体类后,接下来我们便用 MapSearcher 的 search(Class beanClass, Map<String, Object> params): SearchResult<Map<String, Object>> 方法来体验一下如何 只用一行代码 实现一个检索接口,代码如下
@RestController
@RequestMapping("/user")
public class UserController {@Autowiredprivate MapSearcher mapSearcher; // 注入 BeanSearcher 的检索器@GetMapping("/index")public SearchResult<Map<String, Object>> index(HttpServletRequest request) {// 一行代码,实现一个用户检索接口(MapUtils.flat 只是收集前端的请求参数)return mapSearcher.search(User.class, MapUtils.flat(request.getParameterMap()));}}
这篇关于Bean-Searcher的使用提高查询效率的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!