condition()
AnylineController中提供了condition()用来接收客户端传值,condition()返回org.anyline.data.param.ConfigStore
condition()主要用来:
1.通过HttpRequest构造ConfigStore用来实现复杂的数据库查询条件
2.自动封装分页参数
分页参数比较简单condition(true)表示需要分页 condition(10)表示分页并显式指定一页10行
实际开发中可能需要修改分页参数,参考【分页】
如果有比较复杂的查询条件,ConfigStore提供了and/or()来实现从后台添加查询条件
conditoin()可以解析url,form,(request)body的中的数据,觉见格式:
k1=v1&k2=v2
k1=v1&k1=v2数组一般这样提交
ks=1,2,3
{k:v,k:v}一般是通过post提交一个raw没有key
常用格式如:
condition("ID:id") where ID = ?
condition("TYEP:[type]") where TYPE IN (?,?,?)
condition("NM:%nm%") where NM LIKE '%张三%'
condition("[CODES]:code") where FIND_IN_SET('0',CODES)
condition参数格式参考:约定格式
务必注意:Spring mvc 5以后 由于 request中getReader()和getInputStream()只能调用一次,如果在拦截器中获取Request中数据后或者用了@RequestBody接收参数后,condition()就没法在继续获取数据了