From 63d7e85fb493e6d093ab5c319e9a8ab3817da270 Mon Sep 17 00:00:00 2001 From: Redkale <22250530@qq.com> Date: Mon, 25 Jul 2016 17:48:58 +0800 Subject: [PATCH] --- src/org/redkale/source/DataSource.java | 2 ++ src/org/redkale/source/FilterBean.java | 2 ++ src/org/redkale/source/FilterColumn.java | 1 + src/org/redkale/source/FilterExpress.java | 1 + src/org/redkale/source/FilterFunc.java | 17 ++++++++++------- src/org/redkale/source/FilterGroup.java | 2 +- src/org/redkale/source/FilterNode.java | 21 +++++++++++++-------- src/org/redkale/source/FilterValue.java | 3 ++- 8 files changed, 32 insertions(+), 17 deletions(-) diff --git a/src/org/redkale/source/DataSource.java b/src/org/redkale/source/DataSource.java index 519158b7e..9717cf9d1 100644 --- a/src/org/redkale/source/DataSource.java +++ b/src/org/redkale/source/DataSource.java @@ -13,6 +13,8 @@ import java.util.function.Consumer; import org.redkale.util.*; /** + * + * DataSource 为数据库或内存数据库的数据源,提供类似JPA、Hibernate的接口与功能。 * *

* 详情见: http://redkale.org diff --git a/src/org/redkale/source/FilterBean.java b/src/org/redkale/source/FilterBean.java index a8d1baa90..1368af025 100644 --- a/src/org/redkale/source/FilterBean.java +++ b/src/org/redkale/source/FilterBean.java @@ -7,6 +7,8 @@ package org.redkale.source; /** + * + * 不被标记为@javax.persistence.Transient 的字段均视为过滤条件 * *

详情见: http://redkale.org * @author zhangjx diff --git a/src/org/redkale/source/FilterColumn.java b/src/org/redkale/source/FilterColumn.java index b668edfbd..f4089a9dd 100644 --- a/src/org/redkale/source/FilterColumn.java +++ b/src/org/redkale/source/FilterColumn.java @@ -10,6 +10,7 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; import java.lang.annotation.*; /** + * 过滤字段标记 * *

* 详情见: http://redkale.org diff --git a/src/org/redkale/source/FilterExpress.java b/src/org/redkale/source/FilterExpress.java index dc2be48b1..9a5857b4c 100644 --- a/src/org/redkale/source/FilterExpress.java +++ b/src/org/redkale/source/FilterExpress.java @@ -6,6 +6,7 @@ package org.redkale.source; /** + * 函数表达式, 均与SQL定义中的表达式相同 * *

* 详情见: http://redkale.org diff --git a/src/org/redkale/source/FilterFunc.java b/src/org/redkale/source/FilterFunc.java index 8b45be5ab..a0a539a19 100644 --- a/src/org/redkale/source/FilterFunc.java +++ b/src/org/redkale/source/FilterFunc.java @@ -6,17 +6,20 @@ package org.redkale.source; /** + * 常见的SQL聚合函数 + * + *

+ * 详情见: http://redkale.org * - *

详情见: http://redkale.org * @author zhangjx */ public enum FilterFunc { - AVG, - COUNT, - DISTINCTCOUNT, - MAX, - MIN, - SUM; + AVG, //平均值 + COUNT, //总数 + DISTINCTCOUNT, //去重总数 + MAX, //最大值 + MIN, //最小值 + SUM; //求和 public String getColumn(String col) { if (this == DISTINCTCOUNT) return "COUNT(DISTINCT " + col + ")"; diff --git a/src/org/redkale/source/FilterGroup.java b/src/org/redkale/source/FilterGroup.java index 12769658e..e324a522f 100644 --- a/src/org/redkale/source/FilterGroup.java +++ b/src/org/redkale/source/FilterGroup.java @@ -51,7 +51,7 @@ import java.lang.annotation.*; * * 转换的SQL语句为: WHERE id = ? AND ((desc LIKE ? AND name LIKE ?) OR (age = ? OR birthday = ?)) * 因为默认是AND关系, @FilterGroup("") 等价于 @FilterGroup("[AND]") - * 所以示例二的@FilterGroup("[OR]g1.[AND]subg1") 可以简化为 @FilterGroup("[OR]g1") + * 所以示例二的@FilterGroup("[OR]g1.[AND]subg1") 可以简化为 @FilterGroup("[OR]g1.subg1") */ /** *

diff --git a/src/org/redkale/source/FilterNode.java b/src/org/redkale/source/FilterNode.java index ba9db47e9..3c9d15a0a 100644 --- a/src/org/redkale/source/FilterNode.java +++ b/src/org/redkale/source/FilterNode.java @@ -13,9 +13,11 @@ import static org.redkale.source.FilterExpress.*; import org.redkale.util.Attribute; /** - * 注意: 在调用 createSQLExpress 之前必须先调用 createSQLJoin 在调用 createPredicate 之前必须先调用 isCacheUseable - * - * + * 注意:
+ * 在调用 createSQLExpress 之前必须先调用 createSQLJoin
+ * 在调用 createPredicate 之前必须先调用 isCacheUseable + * + * * 详情见: http://redkale.org * * @author zhangjx @@ -143,10 +145,11 @@ public class FilterNode { /** * 该方法需要重载 * - * @param Entity类的泛型 - * @param func EntityInfo的加载器 + * @param Entity类的泛型 + * @param func EntityInfo的加载器 * @param joinTabalis 关联表集合 - * @param info Entity类的EntityInfo + * @param info Entity类的EntityInfo + * * @return SQL的join语句 不存在返回null */ protected CharSequence createSQLJoin(final Function func, final Map joinTabalis, final EntityInfo info) { @@ -192,6 +195,7 @@ public class FilterNode { * 该方法需要重载 * * @param entityApplyer EntityInfo的加载器 + * * @return 是否可以使用缓存 */ protected boolean isCacheUseable(final Function entityApplyer) { @@ -205,9 +209,10 @@ public class FilterNode { /** * 该方法需要重载 * - * @param Entity类的泛型 + * @param Entity类的泛型 * @param joinTabalis 关联表的集合 - * @param info EntityInfo + * @param info EntityInfo + * * @return JOIN的SQL语句 */ protected CharSequence createSQLExpress(final EntityInfo info, final Map joinTabalis) { diff --git a/src/org/redkale/source/FilterValue.java b/src/org/redkale/source/FilterValue.java index e7cfaa12e..4415dc780 100644 --- a/src/org/redkale/source/FilterValue.java +++ b/src/org/redkale/source/FilterValue.java @@ -6,7 +6,8 @@ package org.redkale.source; /** - * FilterValue主要用于复杂的表达式, 例如: col / 10 = 3 、MOD(col, 8) > 0 这些都不是单独一个数值能表达的,因此需要FilterValue 才构建 8 、 > 、0 组合值. + * FilterValue主要用于复杂的表达式。
+ * 例如: col / 10 = 3 、MOD(col, 8) > 0 这些都不是单独一个数值能表达的,因此需要FilterValue 才构建 8 、 > 、0 组合值. * *

* 详情见: http://redkale.org