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 = "")。

    分表分库