首页 > 代码库 > 用 Form-Sql-Builder-mysql 将用户提交的表单自动转化成sql
用 Form-Sql-Builder-mysql 将用户提交的表单自动转化成sql
用 Form-Sql-Builder-mysql 将用户提交的表单自动转化成sql
maven依赖
<dependency> <groupId>org.crazycake</groupId> <artifactId>form-sql-builder-mysql</artifactId> <version>1.0.0-RELEASE</version> </dependency>
快速开始
STEP 1. 创建一个规则文件
在classpath下建立一个文件夹叫 formSqlRules ,在这个文件夹下创建global.json
{ "global":[ { "field":"String:*", "op":"like", "rel":"and" },{ "field":"*:*", "op":"=", "rel":"and" } ] }STEP 2. 创建一个测试用PO类
public class Person { private Integer activeStatus; private String name; private Integer age; private String city; public Person(String name, Integer age, String city, Integer activeStatus){ this.name = name; this.age = age; this.city = city; this.activeStatus = activeStatus; } public Integer getActiveStatus() { return activeStatus; } public void setActiveStatus(Integer activeStatus) { this.activeStatus = activeStatus; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } }
STEP 3. 调用 FormSqlBuilder
Person form = new Person("jack", 36, "ny", 1); FormSqlBuilder b = new FormSqlBuilder(form, "global"); b.addLimit(1, 20); SqlAndParams s = b.build(); System.out.println(s.getSql()); for(Object v:s.getParams()){ System.out.println(v); }控制台输出
SELECT * FROM person WHERE name like ? AND city like ? AND active_status = ? AND age = ? LIMIT 0,20 jack ny 1 36更具体的关于
- 规则的写法和可选值
- 通配符的用法
- 范围查询
- 分组查询
- 添加limit
- 添加排序
- IN查询
参见github官网
用 Form-Sql-Builder-mysql 将用户提交的表单自动转化成sql
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。