diff --git a/source.html b/source.html index 52de544e8..e11689fec 100644 --- a/source.html +++ b/source.html @@ -107,16 +107,17 @@ new UserBean(0, "redkale", null) 等价于 "WHERE userName LIKE '%redkale%'" -
如上定义UserBean过滤条件,当非数值类字段值为null、字符串值为空、数值类字段值小于@FilterColumn.least()值(least的默认值为1)都不会构建成过滤条件。@FilterColumn.express根据字段的类型有不同的默认值,若字段类型为Collection子类或数组则express默认为FilterExpress.IN;若字段类型为Range的子类则express默认为FilterExpress.BETWEEN;其他类型则express默认为FilterExpress.EQUAL。默认字段之间是AND关系,若想使用OR关系则需要使用@FilterGroup进行标记:
-public class UserBean implements FilterBean {
+ 如上定义UserBean过滤条件,当非数值类字段值为null、字符串值为空、数值类字段值小于@FilterColumn.least()值(least的默认值为1)都不会构建成过滤条件。@FilterColumn.express根据字段的类型有不同的默认值,若字段类型为Collection子类或数组则express默认为FilterExpress.IN;若字段类型为Range的子类则express默认为FilterExpress.BETWEEN;其他类型则express默认为FilterExpress.EQUAL。默认字段之间是AND关系,若想使用OR关系则需要使用@FilterOrs进行标记:
+ @FilterOrs{"a"}
+public class UserBean implements FilterBean {
private int userid;
- @FilterGroup("[OR]a")
+ @FilterGroup("a")
@FilterColumn(express = FilterExpress.LIKE)
private String userName;
- @FilterGroup("[OR]a")
+ @FilterGroup("a")
private Range age;
public UserBean(int userid, String userName, Range age) {
@@ -143,7 +144,7 @@
source.getNumberResult(User.class, FilterFunc.COUNT, null, new UserBean(0, "redkale", new IntRange(14, 36))).intValue() 等价于
"SELECT COUNT(*) FROM user WHERE userName LIKE '%redkale%' AND age BETWEEN 14 AND 36"
- 如上@FilterGroup 的value 必须是[OR]或者[AND]开头,没有标记@FilterGroup的字段等价于标记了@FilterGroup(value = "[AND]")。[AND]、[OR]后面的字符串为GROUP_NAME,默认的GROUP_NAME为空字符串。如上"[OR]a"可以直接使用"[OR]",有多个[OR]或者[AND]则需要加上不同的NAME。
+ 如上@FilterGroup 的value 用.来构建树结构,没有标记@FilterGroup的字段等价于标记了@FilterGroup(value = "")。
分表分库