# bean-searcher **Repository Path**: qimo97/bean-searcher ## Basic Information - **Project Name**: bean-searcher - **Description**: 超轻量级 Web 条件检索引擎,为弥补传统ORM框架在复杂条件列表检索时的不足而生,使一行代码实现复杂列表检索成为可能! - **Primary Language**: Java - **License**: Artistic-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 300 - **Created**: 2019-07-02 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Bean Searcher [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.ejlchina/bean-searcher/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.ejlchina/bean-searcher/) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) Introduction --- - git clone https://gitee.com/ejlchina-zhxu/bean-searcher.git - cd bean-searcher && mvn install - have fun. Documentation --- - 中文 https://gitee.com/ejlchina-zhxu/bean-searcher/wikis/Home ## 安装 ##### Gradle ``` dependencies { compile 'com.ejlchina:bean-searcher:1.4.3' } ``` ##### Maven ``` com.ejlchina bean-searcher 1.4.3 ``` ## 创建 Search Bean ``` @SearchBean(tables = "users u") public class UserBean { @DbField("u.id") private Long id; @DbField("u.type") private String username; @DbField("u.date_created") private Date dateCreated; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Date getDateCreated() { return dateCreated; } public void setDateCreated(Date dateCreated) { this.dateCreated = dateCreated; } } ``` ## 配置 ##### With Spring ``` ${Search Bean所在的包名} ``` ## 调用检索器 ##### With Spring ``` @RestController @RequestMapping("/users") public class UserController { @Autowired private Searcher searcher; @RequestMapping("/index") public SearchResult index(HttpServletRequest request) { // 检索参数 Map params = MapUtils.flat(request.getParameterMap()); // 调用检索器检索数据 return searcher.search(UserBean.class, params) } } ``` ## 检索功能 通过以上步骤,实际上写发出了一个API接口(/users/index),那么这个接口可以接收哪些参数,返回哪些数据呢?
参数名 参数类型 默认值 功能含义
id Long 按ID查询
id-op String eq ID的检索运算符,可以是等于、大于、小于,等等
username String 按用户名查询
username-op String eq 用户名的检索运算符,可以是等于、包含、以开头、已结尾,等等
username-ic Boolean false 按用户名检索时,是否忽略大小写