public class BeanShellWhereBuilder
extends java.lang.Object
| 限定符和类型 | 字段和说明 |
|---|---|
static java.lang.String |
BIT_OR |
static java.lang.String |
DT_MYSQL |
static java.lang.String |
IGNORE_EMPTY |
static java.lang.String |
KEYWORD_COND_COUNT |
static java.lang.String |
KEYWORD_EXP_BUFFER |
static java.lang.String |
KEYWORD_WHERE_BUFFER |
static java.lang.String |
NOT_EQUAL |
static java.lang.String |
OR_NULL |
| 限定符和类型 | 方法和说明 |
|---|---|
BeanShellWhereBuilder |
and()
指定与前一个表达式的连接方式为AND
|
BeanShellWhereBuilder |
bitTest(java.lang.String field)
创建位运算比较表达式,如
(column_name & 100) = $<column_name>, |
BeanShellWhereBuilder |
bitTest(java.lang.String field,
java.lang.Class<? extends gu.sql2java.wherehelper.BitAggFun> aggFun)
创建位运算比较表达式,如
(column_name & 100) = $<column_name>, |
BeanShellWhereBuilder |
bitTest(java.lang.String left,
java.lang.String field)
创建位运算比较表达式,如
(column_name & 100) = $<column_name>, |
BeanShellWhereBuilder |
bitTest(java.lang.String left,
java.lang.String field,
java.lang.Class<? extends gu.sql2java.wherehelper.BitAggFun> aggFun)
创建位运算比较表达式,如
(column_name & 100) = $<column_name>, |
WhereHelper |
build()
根据指定的条件生成
WhereHelper实例 |
BeanShellWhereBuilder |
compare(java.lang.String field,
CompareOp op,
boolean quote)
创建算述比较表达式,如
column_name > $<column_name> |
BeanShellWhereBuilder |
compare(java.lang.String test,
java.lang.String[] testNullVars,
java.lang.String[] testNonullVars,
java.lang.String[] testEmptyVars,
java.lang.String[] testNoEmptyVars,
java.lang.String[] testTrueVars,
java.lang.String[] testFalseVars,
java.lang.String left,
java.lang.String field,
CompareOp compareOp,
boolean quote,
java.lang.Boolean checkFieldEmpty)
创建算述比较表达式,如
column_name > $<column_name> |
BeanShellWhereBuilder |
compare(java.lang.String left,
java.lang.String field,
CompareOp op,
boolean quote)
创建算述比较表达式,如
column_name > $<column_name> |
BeanShellWhereBuilder |
compare(java.lang.String left,
java.lang.String field,
CompareOp op,
boolean quote,
boolean refValue)
创建算述比较表达式,如
column_name > $<column_name> |
BeanShellWhereBuilder |
compare(java.lang.String test,
java.lang.String left,
java.lang.String field,
CompareOp op,
boolean quote,
boolean refValue,
java.lang.Boolean checkFieldEmpty)
创建算述比较表达式,如
column_name > $<column_name>当 checkFieldEmpty 为true对field指定的变量执行判断空检查,如果不为null或空则创建表达式,
当 checkFieldEmpty 为false对field指定的变量执行判断null检查,如果不为null则创建表达式, |
BeanShellWhereBuilder |
compareIf(java.lang.String[] testVars,
VarTestType testType,
java.lang.String field,
CompareOp op,
boolean quote)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建算述比较表达式,如column_name > $<column_name>testVars,testType为null或空视为true, |
BeanShellWhereBuilder |
compareIf(java.lang.String[] testVars,
VarTestType testType,
java.lang.String left,
java.lang.String field,
CompareOp op,
boolean quote)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建算述比较表达式,如column_name > $<column_name>testVars,testType为null或空视为true, |
BeanShellWhereBuilder |
compareIf(java.lang.String test,
java.lang.String field,
CompareOp op,
boolean quote)
如果
test 定义的表达式为true} ,则如果test 定义的表达式为true} ,则创建算述比较表达式,如column_name > $<column_name> |
BeanShellWhereBuilder |
compareIf(java.lang.String test,
java.lang.String left,
java.lang.String field,
CompareOp op,
boolean quote,
boolean refValue)
如果
test 定义的表达式为true} ,则创建算述比较表达式,如column_name > $<column_name> |
BeanShellWhereBuilder |
compareIf(java.lang.String testVar,
VarTestType testType,
CompareOp testOp,
java.lang.Object testValue,
boolean testQuote,
boolean testRefValue,
java.lang.String left,
java.lang.String field,
CompareOp op,
boolean quote,
boolean refValue)
根据
testType指定的类型测试testVar 指定的变量满足条件,则创建算述比较表达式,
如column_name > $(column_name)field,testType为null或空视则忽略,不生成表达式 |
boolean |
debuglog() |
BeanShellWhereBuilder |
debuglog(boolean debuglog)
设置是否输出调试信息
|
BeanShellWhereBuilder |
equal(java.lang.String field)
创建等价表达式,如
column_name = $<column_name>,如果column_name为 null或空,则表达式为 column_name IS NULL如果column_name为集合,则为IN表达式 column_name IN (...) |
BeanShellWhereBuilder |
equal(java.lang.String left,
java.lang.String field) |
BeanShellWhereBuilder |
equalIf(java.lang.String[] testVars,
VarTestType testType,
java.lang.String field,
boolean not,
boolean notCheckEmpty)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建等价表达式testVars,testType为null或空视为true,
输入参数为null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIf(java.lang.String[] testVars,
VarTestType testType,
java.lang.String left,
java.lang.String field,
boolean not,
boolean notCheckEmpty)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建等价表达式testVars,testType为null或空视为true,
输入参数为null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIf(java.lang.String test,
java.lang.String[] testNullVars,
java.lang.String[] testNonullVars,
java.lang.String[] testEmptyVars,
java.lang.String[] testNoEmptyVars,
java.lang.String[] testTrueVars,
java.lang.String[] testFalseVars,
java.lang.String left,
java.lang.String field,
boolean not,
boolean notCheckEmpty)
当满足
test指定的条件以及testNullVars,testNonullVars,testEmptyVars,testNoEmptyVars,testTrueVars,testFalseVars指定变量满足条件时,创建等价表达式输入参数为 null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIf(java.lang.String test,
java.lang.String field,
boolean not)
当满足
test指定的条件时,创建等价表达式输入参数为 null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIf(java.lang.String test,
java.lang.String field,
boolean not,
boolean notCheckEmpty)
当满足
test指定的条件时,创建等价表达式输入参数为 null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIf(java.lang.String test,
java.lang.String left,
java.lang.String field,
boolean not)
当满足
test指定的条件时,创建等价表达式输入参数为 null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIf(java.lang.String test,
java.lang.String left,
java.lang.String field,
boolean not,
boolean notCheckEmpty)
当满足
test指定的条件时,创建等价表达式输入参数为 null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIf(java.lang.String testVar,
VarTestType testType,
CompareOp testOp,
java.lang.Object testValue,
boolean testQuote,
boolean testRefValue,
java.lang.String left,
java.lang.String field,
boolean not,
boolean notCheckEmpty)
根据
testType指定的类型测试testVar 指定的变量满足条件,则创建等价表达式field,testType为null或空视则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIfNonEmpty(java.lang.String field)
参见
equal(String),不之处在于如果column_name为null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIfNonEmpty(java.lang.String field,
boolean not)
参见
equal(String),不之处在于如果column_name为null或空则忽略,不生成表达式 |
BeanShellWhereBuilder |
equalIfNonEmpty(java.lang.String left,
java.lang.String field) |
BeanShellWhereBuilder |
equalIfNonEmpty(java.lang.String left,
java.lang.String field,
boolean not) |
BeanShellWhereBuilder |
equalNot(java.lang.String field)
创建一个不等价表达式,如{@code column_name !
|
BeanShellWhereBuilder |
equalNot(java.lang.String left,
java.lang.String field) |
BeanShellWhereBuilder |
equalOrNull(java.lang.String field)
创建等价或为NULL表达式,
如
column_name = $<column_name> OR column_name IS NULL, |
BeanShellWhereBuilder |
equalOrNull(java.lang.String left,
java.lang.String field) |
BeanShellWhereBuilder |
exp(java.lang.String exp)
生成一般表达式
|
BeanShellWhereBuilder |
from(java.lang.annotation.Annotation[] annots)
从注解中创建表达式
|
java.lang.String |
getGroupByColumns() |
java.lang.String |
getGroupByVarname() |
java.lang.String |
getOrderByColumns() |
java.lang.String |
getOrderByVarname() |
java.util.Set<java.lang.String> |
getReferenceVariables() |
java.lang.Class<? extends gu.sql2java.BaseRow> |
getTargetClass() |
java.util.Map<java.lang.String,java.lang.Class<?>> |
getVarTypes() |
BeanShellWhereBuilder |
groupBy(java.lang.String... columnNames)
指定GROUP BY 的字段名
|
BeanShellWhereBuilder |
groupByVar(java.lang.String varName)
指定GROUP BY 的字段变量名
|
BeanShellWhereBuilder |
ifelse(java.lang.String[] testVars,
VarTestType testType,
java.lang.String doStatement,
java.lang.String elseStatement)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,
则生成doStatement指定的表达式,
否则生成elseStatement指定的表达式,elseStatement为null时不生成表达式,
testVars,testType为null或空视为true, |
BeanShellWhereBuilder |
ifelse(java.lang.String test,
java.lang.String[] testNullVars,
java.lang.String[] testNonullVars,
java.lang.String[] testEmptyVars,
java.lang.String[] testNoEmptyVars,
java.lang.String[] testTrueVars,
java.lang.String[] testFalseVars,
java.lang.String doStatement,
java.lang.String elseStatement)
当满足
test指定的条件以及testNullVars,testNonullVars,testEmptyVars,testNoEmptyVars,testTrueVars,testFalseVars指定变量满足条件时
则生成doStatement指定的表达式,
否则生成elseStatement指定的表达式,elseStatement为null时不生成表达式,
test,testNullVars,testNonullVars,testEmptyVars,testNoEmptyVars,testTrueVars,testFalseVars都为空时忽略 |
BeanShellWhereBuilder |
ifelse(java.lang.String test,
java.lang.String doStatement,
java.lang.String elseStatement)
输入条件
test为true则生成doStatement指定的表达式,
否则生成elseStatement指定的表达式,elseStatement为null时不生成表达式 |
BeanShellWhereBuilder |
imports(java.lang.String... imports)
增加import类型语句,每一个元素为一行导入语句,为
null或空忽略。 |
BeanShellWhereBuilder |
like(java.lang.String field)
创建两侧模糊匹配表达式,如
column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
like(java.lang.String left,
java.lang.String field)
创建两侧模糊匹配表达式,如
column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
like(java.lang.String test,
java.lang.String[] testNullVars,
java.lang.String[] testNonullVars,
java.lang.String[] testEmptyVars,
java.lang.String[] testNoEmptyVars,
java.lang.String[] testTrueVars,
java.lang.String[] testFalseVars,
java.lang.String left,
java.lang.String field,
LikeOp likeOp,
boolean refValue)
创建模糊匹配表达式,如
column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
like(java.lang.String left,
java.lang.String field,
boolean refValue)
创建两侧模糊匹配表达式,如
column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
like(java.lang.String left,
java.lang.String field,
LikeOp likeOp,
boolean refValue)
创建模糊匹配表达式,如
column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
like(java.lang.String test,
java.lang.String left,
java.lang.String field,
LikeOp likeOp,
boolean refValue)
创建模糊匹配表达式,如
column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
likeIf(java.lang.String[] testVars,
VarTestType testType,
java.lang.String field,
LikeOp likeOp)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建模糊匹配表达式,如column_name LIKE '%$<column_name>%'testVars,testType为null或空则不创建表达式 |
BeanShellWhereBuilder |
likeIf(java.lang.String[] testVars,
VarTestType testType,
java.lang.String left,
java.lang.String field,
LikeOp likeOp)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建模糊匹配表达式,如column_name LIKE '%$<column_name>%'testVars,testType为null或空则不创建表达式 |
BeanShellWhereBuilder |
likeIf(java.lang.String[] testVars,
VarTestType testType,
java.lang.String left,
java.lang.String field,
LikeOp likeOp,
boolean refValue)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建模糊匹配表达式,如column_name LIKE '%$<column_name>%'testVars,testType为null或空则不创建表达式 |
BeanShellWhereBuilder |
likeIf(java.lang.String test,
java.lang.String field)
创建条件执行的两侧模糊匹配表达式,如
column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
likeIf(java.lang.String test,
java.lang.String left,
java.lang.String field,
boolean refValue)
如果
test 定义的表达式为true} ,则创建条件执行的两侧模糊匹配表达式,如column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
likeIf(java.lang.String test,
java.lang.String left,
java.lang.String field,
LikeOp likeOp,
boolean refValue)
如果
test 定义的表达式为true} ,则创建条件执行的两侧模糊匹配表达式,如column_name LIKE '%$<column_name>%' |
BeanShellWhereBuilder |
likeIf(java.lang.String testVar,
VarTestType testType,
CompareOp testOp,
java.lang.Object testValue,
boolean testQuote,
boolean testRefValue,
java.lang.String left,
java.lang.String field,
LikeOp likeOp,
boolean refValue)
根据
testType指定的类型测试testVar 指定的变量满足条件,则创建LIKE表达式field,testType为null或空视则忽略,不生成表达式 |
BeanShellWhereBuilder |
onlyif(java.lang.String[] testVars,
VarTestType testType,
java.lang.String doStatement)
同
ifelse(String[], VarTestType, String, String),只是没有elseStatement |
BeanShellWhereBuilder |
onlyif(java.lang.String test,
java.lang.String doStatement)
同
ifelse(String, String, String),只是没有elseStatement |
BeanShellWhereBuilder |
onlyif(java.lang.String test,
java.lang.String[] testNullVars,
java.lang.String[] testNonullVars,
java.lang.String[] testEmptyVars,
java.lang.String[] testNoEmptyVars,
java.lang.String[] testTrueVars,
java.lang.String[] testFalseVars,
java.lang.String doStatement)
|
BeanShellWhereBuilder |
or()
指定与前一个表达式的连接方式为OR
|
BeanShellWhereBuilder |
orderBy(java.lang.String columnName)
指定ORDER BY 的字段名,格式要求 ${字段名}[ DESC|ASC]
|
BeanShellWhereBuilder |
orderBy(java.lang.String columnName,
boolean desc)
指定ORDER BY 的字段名
|
BeanShellWhereBuilder |
orderByVar(java.lang.String varName)
指定ORDER BY 的字段变量名
|
BeanShellWhereBuilder |
pagequery(boolean pagequery)
设置是否支持生成分页查询语句(如MySQL LIMIT ${row_count} OFFSET ${offset})
|
BeanShellWhereBuilder |
range(java.lang.String field,
boolean quote)
创建数值范围算述比较表达式,如
column_name > $(column_name_min) && column_name <= $(column_name_max)范围类型为 RangeType.OPENCLOSE |
BeanShellWhereBuilder |
range(java.lang.String field,
RangeType rangeType,
boolean quote)
创建数值范围算述比较表达式,如
column_name > $(column_name_min) && column_name <= $(column_name_max) |
BeanShellWhereBuilder |
range(java.lang.String test,
java.lang.String[] testNullVars,
java.lang.String[] testNonullVars,
java.lang.String[] testEmptyVars,
java.lang.String[] testNoEmptyVars,
java.lang.String[] testTrueVars,
java.lang.String[] testFalseVars,
java.lang.String field,
java.lang.String lowerVar,
java.lang.String lowerSuffix,
boolean lowerRefValue,
java.lang.String upperVar,
java.lang.String upperSuffix,
boolean upperRefValue,
RangeType rangeType,
boolean quote,
java.lang.Boolean checkFieldEmpty)
创建数值范围算述比较表达式,如
column_name > $(column_name_min) && column_name <= $(column_name_max) |
BeanShellWhereBuilder |
range(java.lang.String field,
java.lang.String lowerVar,
java.lang.String lowerSuffix,
boolean lowerRefValue,
java.lang.String upperVar,
java.lang.String upperSuffix,
boolean upperRefValue,
RangeType rangeType,
boolean quote)
创建数值范围算述比较表达式,如
column_name > $(column_name_min) && column_name <= $(column_name_max) |
BeanShellWhereBuilder |
range(java.lang.String field,
java.lang.String lowerVar,
java.lang.String upperVar,
RangeType rangeType,
boolean quote)
创建数值范围算述比较表达式,如
column_name > $(column_name_min) && column_name <= $(column_name_max) |
BeanShellWhereBuilder |
range(java.lang.String test,
java.lang.String field,
java.lang.String lowerVar,
java.lang.String lowerSuffix,
boolean lowerRefValue,
java.lang.String upperVar,
java.lang.String upperSuffix,
boolean upperRefValue,
RangeType rangeType,
boolean quote,
java.lang.Boolean checkFieldEmpty)
创建数值范围算述比较表达式,如
column_name > $(column_name_min) && column_name <= $(column_name_max)当 checkFieldEmpty 为true对field指定的变量执行判断空检查,如果不为null或空则创建表达式,
当 checkFieldEmpty 为false对field指定的变量执行判断null检查,如果不为null则创建表达式, |
BeanShellWhereBuilder |
rangeIf(java.lang.String[] testVars,
VarTestType testType,
java.lang.String field,
java.lang.String lowerVar,
java.lang.String lowerSuffix,
boolean lowerRefValue,
java.lang.String upperVar,
java.lang.String upperSuffix,
boolean upperRefValue,
RangeType rangeType,
boolean quote)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建数值范围算述比较表达式,如column_name > $(column_name_min) && column_name <= $(column_name_max)testVars,testType为null或空视为true, |
BeanShellWhereBuilder |
rangeIf(java.lang.String[] testNullVars,
VarTestType testType,
java.lang.String field,
java.lang.String lowerVar,
java.lang.String upperVar,
RangeType rangeType,
boolean quote)
根据
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建数值范围算述比较表达式,如column_name > $(column_name_min) && column_name <= $(column_name_max)testVars,testType为null或空视为true, |
BeanShellWhereBuilder |
rangeIf(java.lang.String test,
java.lang.String field,
boolean quote)
如果
test 定义的表达式为true} ,则创建数值范围算述比较表达式,如column_name > $(column_name_min) && column_name <= $(column_name_max) |
BeanShellWhereBuilder |
rangeIf(java.lang.String test,
java.lang.String field,
java.lang.String lowerVar,
java.lang.String lowerSuffix,
boolean lowerRefValue,
java.lang.String upperVar,
java.lang.String upperSuffix,
boolean upperRefValue,
RangeType rangeType,
boolean quote)
如果
test 定义的表达式为true} ,则创建数值范围算述比较表达式,如column_name > $(lower_value)> && column_name <= $(upper_value) |
BeanShellWhereBuilder |
rangeIf(java.lang.String test,
java.lang.String field,
java.lang.String lowerVar,
java.lang.String upperVar,
RangeType rangeType,
boolean quote)
如果
test 定义的表达式为true} ,则创建数值范围算述比较表达式,如column_name > $(column_name_min) && column_name <= $(column_name_max) |
BeanShellWhereBuilder |
selectFrom(java.lang.String selectFrom)
指定SELECT ....
|
BeanShellWhereBuilder |
testVar(java.lang.String testVar,
VarTestType testType,
CompareOp testOp,
java.lang.Object testValue,
boolean testQuote,
boolean testRefValue,
java.lang.String doStatement)
生成对变量
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式, |
BeanShellWhereBuilder |
testVar(java.lang.String testVar,
VarTestType testType,
CompareOp testOp,
java.lang.Object testValue,
boolean testQuote,
boolean testRefValue,
java.lang.String doStatement,
java.lang.String elseStatement)
生成对变量
testVar的测试表达式if... else语句,表达式为true则生成doStatement指定的表达式,
否则生成elseStatement指定的表达式,elseStatement为null时不生成表达式 |
BeanShellWhereBuilder |
testVar(java.lang.String testVar,
VarTestType testType,
CompareOp testOp,
java.lang.Object testValue,
java.lang.String doStatement)
生成对变量
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式, |
BeanShellWhereBuilder |
testVar(java.lang.String testVar,
VarTestType testType,
java.lang.Object testValue,
boolean testQuote,
boolean testRefValue,
java.lang.String doStatement)
生成对变量
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式, |
BeanShellWhereBuilder |
testVar(java.lang.String testVar,
VarTestType testType,
java.lang.Object testValue,
java.lang.String doStatement)
生成对变量
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式, |
BeanShellWhereBuilder |
testVar(java.lang.String testVar,
VarTestType testType,
java.lang.String doStatement)
生成对变量
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式, |
BeanShellWhereBuilder |
withImports(java.lang.Iterable<java.lang.String> imports)
增加import类型语句,每一个元素为一行导入语句,为
null或空忽略。 |
public static final java.lang.String NOT_EQUAL
public static final java.lang.String OR_NULL
public static final java.lang.String BIT_OR
public static final java.lang.String IGNORE_EMPTY
public static final java.lang.String KEYWORD_COND_COUNT
public static final java.lang.String KEYWORD_WHERE_BUFFER
public static final java.lang.String KEYWORD_EXP_BUFFER
public static final java.lang.String DT_MYSQL
public boolean debuglog()
public BeanShellWhereBuilder debuglog(boolean debuglog)
debuglog - public BeanShellWhereBuilder pagequery(boolean pagequery)
pagequery - public java.util.Set<java.lang.String> getReferenceVariables()
public java.lang.Class<? extends gu.sql2java.BaseRow> getTargetClass()
public java.util.Map<java.lang.String,java.lang.Class<?>> getVarTypes()
public java.lang.String getOrderByVarname()
public java.lang.String getGroupByVarname()
public java.lang.String getOrderByColumns()
public java.lang.String getGroupByColumns()
public BeanShellWhereBuilder exp(java.lang.String exp)
exp - public BeanShellWhereBuilder or()
public BeanShellWhereBuilder and()
public BeanShellWhereBuilder equal(java.lang.String field)
column_name = $<column_name>,null或空,则表达式为 column_name IS NULLcolumn_name IN (...)field - public BeanShellWhereBuilder equal(java.lang.String left, java.lang.String field)
left - field - public BeanShellWhereBuilder equalNot(java.lang.String field)
column_name != $<column_name>,null或空,则表达式为 column_name IS NOT NULLcolumn_name NOT IN (...)field - public BeanShellWhereBuilder equalNot(java.lang.String left, java.lang.String field)
public BeanShellWhereBuilder equalOrNull(java.lang.String field)
column_name = $<column_name> OR column_name IS NULL,field - public BeanShellWhereBuilder equalOrNull(java.lang.String left, java.lang.String field)
left - field - public BeanShellWhereBuilder equalIfNonEmpty(java.lang.String field, boolean not)
equal(String),不之处在于如果column_name为null或空则忽略,不生成表达式field - not - 为true执行不等价比较public BeanShellWhereBuilder equalIfNonEmpty(java.lang.String left, java.lang.String field, boolean not)
left - field - not - public BeanShellWhereBuilder equalIfNonEmpty(java.lang.String field)
equal(String),不之处在于如果column_name为null或空则忽略,不生成表达式field - public BeanShellWhereBuilder equalIfNonEmpty(java.lang.String left, java.lang.String field)
left - field - public BeanShellWhereBuilder equalIf(java.lang.String test, java.lang.String left, java.lang.String field, boolean not, boolean notCheckEmpty)
test指定的条件时,创建等价表达式null或空则忽略,不生成表达式test - 判断条件left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 字段名not - 为true执行不等价比较notCheckEmpty - 为true 不检查字段是否为null或空equal(String)public BeanShellWhereBuilder equalIf(java.lang.String test, java.lang.String[] testNullVars, java.lang.String[] testNonullVars, java.lang.String[] testEmptyVars, java.lang.String[] testNoEmptyVars, java.lang.String[] testTrueVars, java.lang.String[] testFalseVars, java.lang.String left, java.lang.String field, boolean not, boolean notCheckEmpty)
test指定的条件以及testNullVars,testNonullVars,testEmptyVars,testNoEmptyVars,testTrueVars,testFalseVars指定变量满足条件时,创建等价表达式null或空则忽略,不生成表达式test - 判断条件testNullVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testNonullVars - 要求不为null的变量名列表,['var1','var2'],等价于'null!=${var1} && null!=${var2}',为null或空则默认为'true'testEmptyVars - 要求为null或空的变量名列表,['var1','var2'],等价于'isEmpty(${var1}) && isEmpty(${var2})',为null或空则默认为'true'testNoEmptyVars - 要求不为null或空的变量名列表,['var1','var2'],等价于'!isEmpty(${var1}) && !isEmpty(${var2})',为null或空则默认为'true'testTrueVars - 要求为true的变量名列表,['var1','var2'],等价于'isTrue(${var1)} && isTrue(${var2})',为空则默认为'true'testFalseVars - 要求为false的变量名列表,['var1','var2'],等价于'isFalse(${var1}) && isFalse(${var2})',为空则默认为'true'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - not - 为true执行不等价比较notCheckEmpty - 为true 不检查字段是否为null或空equalIf(String, String, String, boolean, boolean)public BeanShellWhereBuilder equalIf(java.lang.String test, java.lang.String field, boolean not, boolean notCheckEmpty)
test指定的条件时,创建等价表达式null或空则忽略,不生成表达式test - 判断条件field - not - 为true执行不等价比较notCheckEmpty - 为true 不检查字段是否为null或空equalIf(String, String, String, boolean, boolean)public BeanShellWhereBuilder equalIf(java.lang.String test, java.lang.String left, java.lang.String field, boolean not)
test指定的条件时,创建等价表达式null或空则忽略,不生成表达式test - 判断条件left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - not - 为true执行不等价比较equalIf(String, String, String, boolean, boolean)public BeanShellWhereBuilder equalIf(java.lang.String test, java.lang.String field, boolean not)
test指定的条件时,创建等价表达式null或空则忽略,不生成表达式test - 判断条件field - not - 为true执行不等价比较equalIf(String, String, String, boolean, boolean)public BeanShellWhereBuilder equalIf(java.lang.String[] testVars, VarTestType testType, java.lang.String left, java.lang.String field, boolean not, boolean notCheckEmpty)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建等价表达式testVars,testType为null或空视为true,
输入参数为null或空则忽略,不生成表达式testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testType - left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - not - 为true执行不等价比较notCheckEmpty - 为true 不检查字段是否为null或空equalIf(String, String, String, boolean, boolean)public BeanShellWhereBuilder equalIf(java.lang.String[] testVars, VarTestType testType, java.lang.String field, boolean not, boolean notCheckEmpty)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建等价表达式testVars,testType为null或空视为true,
输入参数为null或空则忽略,不生成表达式testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testType - field - not - 为true执行不等价比较notCheckEmpty - 为true 不检查字段是否为null或空equalIf(String, String, String, boolean, boolean)public BeanShellWhereBuilder equalIf(java.lang.String testVar, VarTestType testType, CompareOp testOp, java.lang.Object testValue, boolean testQuote, boolean testRefValue, java.lang.String left, java.lang.String field, boolean not, boolean notCheckEmpty)
testType指定的类型测试testVar 指定的变量满足条件,则创建等价表达式field,testType为null或空视则忽略,不生成表达式testVar - 条件测试表达式变量名,为null或空则默认为fieldtestType - 变量测试类型testOp - 条件测试操作符testValue - 变量条件测试的目标值testQuote - 为true生成表达式对testValue 以字符串对头尾增加单引号,refValue为true时忽略testRefValue - 为true生成表达式对testValue 视为变量名left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 创建等价表达式的字段名not - 为true执行不等价比较notCheckEmpty - 为true 不检查字段是否为null或空public BeanShellWhereBuilder bitTest(java.lang.String field)
(column_name & 100) = $<column_name>,field - bitTest(String, String, boolean, boolean, Class)public BeanShellWhereBuilder bitTest(java.lang.String field, java.lang.Class<? extends gu.sql2java.wherehelper.BitAggFun> aggFun)
(column_name & 100) = $<column_name>,field - aggFun - bitTest(String, String, boolean, boolean, Class)public BeanShellWhereBuilder bitTest(java.lang.String left, java.lang.String field)
(column_name & 100) = $<column_name>,left - field - bitTest(String, String, boolean, boolean, Class)public BeanShellWhereBuilder bitTest(java.lang.String left, java.lang.String field, java.lang.Class<? extends gu.sql2java.wherehelper.BitAggFun> aggFun)
(column_name & 100) = $<column_name>,left - field - aggFun - bitTest(String, String, boolean, boolean, Class)public BeanShellWhereBuilder ifelse(java.lang.String test, java.lang.String doStatement, java.lang.String elseStatement)
test为true则生成doStatement指定的表达式,
否则生成elseStatement指定的表达式,elseStatement为null时不生成表达式test - 判断条件doStatement - 判断条件为真时的执行语句elseStatement - 判断条件为假时的执行语句,为null忽略public BeanShellWhereBuilder ifelse(java.lang.String test, java.lang.String[] testNullVars, java.lang.String[] testNonullVars, java.lang.String[] testEmptyVars, java.lang.String[] testNoEmptyVars, java.lang.String[] testTrueVars, java.lang.String[] testFalseVars, java.lang.String doStatement, java.lang.String elseStatement)
test指定的条件以及testNullVars,testNonullVars,testEmptyVars,testNoEmptyVars,testTrueVars,testFalseVars指定变量满足条件时
则生成doStatement指定的表达式,
否则生成elseStatement指定的表达式,elseStatement为null时不生成表达式,
test,testNullVars,testNonullVars,testEmptyVars,testNoEmptyVars,testTrueVars,testFalseVars都为空时忽略test - 判断条件testNullVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testNonullVars - 要求不为null的变量名列表,['var1','var2'],等价于'null!=${var1} && null!=${var2}',为null或空则默认为'true'testEmptyVars - 要求为null或空的变量名列表,['var1','var2'],等价于'isEmpty(${var1}) && isEmpty(${var2})',为null或空则默认为'true'testNoEmptyVars - 要求不为null或空的变量名列表,['var1','var2'],等价于'!isEmpty(${var1}) && !isEmpty(${var2})',为null或空则默认为'true'testTrueVars - 要求为true的变量名列表,['var1','var2'],等价于'isTrue(${var1)} && isTrue(${var2})',为空则默认为'true'testFalseVars - 要求为false的变量名列表,['var1','var2'],等价于'isFalse(${var1}) && isFalse(${var2})',为空则默认为'true'doStatement - 判断条件为真时的执行语句elseStatement - 判断条件为假时的执行语句,为null忽略ifelse(String, String, String)public BeanShellWhereBuilder ifelse(java.lang.String[] testVars, VarTestType testType, java.lang.String doStatement, java.lang.String elseStatement)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,
则生成doStatement指定的表达式,
否则生成elseStatement指定的表达式,elseStatement为null时不生成表达式,
testVars,testType为null或空视为true,testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testType - 操作数为1的测试类型doStatement - 判断条件为真时的执行语句elseStatement - 判断条件为假时的执行语句,为null忽略ifelse(String, String, String)public BeanShellWhereBuilder testVar(java.lang.String testVar, VarTestType testType, CompareOp testOp, java.lang.Object testValue, boolean testQuote, boolean testRefValue, java.lang.String doStatement, java.lang.String elseStatement)
testVar的测试表达式if... else语句,表达式为true则生成doStatement指定的表达式,
否则生成elseStatement指定的表达式,elseStatement为null时不生成表达式testVar - 条件测试表达式变量名testType - 变量测试类型testOp - 条件测试操作符testValue - 变量条件测试的目标值testQuote - 为true生成表达式对testValue 以字符串对头尾增加单引号,refValue为true时忽略testRefValue - 为true生成表达式对testValue 视为变量名doStatement - 判断条件为真时的执行语句elseStatement - 判断条件为假时的执行语句,为null忽略public BeanShellWhereBuilder testVar(java.lang.String testVar, VarTestType testType, CompareOp testOp, java.lang.Object testValue, boolean testQuote, boolean testRefValue, java.lang.String doStatement)
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式,testVar - testType - 操作数为3的测试类型testOp - testValue - testQuote - testRefValue - doStatement - testVar(String, VarTestType, CompareOp, Object, boolean, boolean, String, String)public BeanShellWhereBuilder testVar(java.lang.String testVar, VarTestType testType, CompareOp testOp, java.lang.Object testValue, java.lang.String doStatement)
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式,testVar - testType - 操作数为3的测试类型testOp - testValue - doStatement - testVar(String, VarTestType, CompareOp, Object, boolean, boolean, String, String)public BeanShellWhereBuilder testVar(java.lang.String testVar, VarTestType testType, java.lang.Object testValue, boolean testQuote, boolean testRefValue, java.lang.String doStatement)
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式,testVar - testType - 操作数为2的测试类型testValue - testQuote - testRefValue - doStatement - testVar(String, VarTestType, CompareOp, Object, boolean, boolean, String, String)public BeanShellWhereBuilder testVar(java.lang.String testVar, VarTestType testType, java.lang.Object testValue, java.lang.String doStatement)
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式,testVar - testType - 操作数为2的测试类型testValue - doStatement - testVar(String, VarTestType, CompareOp, Object, boolean, boolean, String, String)public BeanShellWhereBuilder testVar(java.lang.String testVar, VarTestType testType, java.lang.String doStatement)
testVar的测试表达式if语句,表达式为true则生成doStatement指定的表达式,testVar - testType - 操作数为1的测试类型doStatement - testVar(String, VarTestType, CompareOp, Object, boolean, boolean, String, String)public BeanShellWhereBuilder onlyif(java.lang.String test, java.lang.String doStatement)
ifelse(String, String, String),只是没有elseStatementtest - 判断条件doStatement - 判断条件为真时的执行语句public BeanShellWhereBuilder onlyif(java.lang.String test, java.lang.String[] testNullVars, java.lang.String[] testNonullVars, java.lang.String[] testEmptyVars, java.lang.String[] testNoEmptyVars, java.lang.String[] testTrueVars, java.lang.String[] testFalseVars, java.lang.String doStatement)
ifelse(String, String[], String[], String[], String[], String[], String[], String, String),只是没有elseStatementpublic BeanShellWhereBuilder onlyif(java.lang.String[] testVars, VarTestType testType, java.lang.String doStatement)
ifelse(String[], VarTestType, String, String),只是没有elseStatementtestVars - testType - 操作数为1的测试类型doStatement - public BeanShellWhereBuilder like(java.lang.String test, java.lang.String left, java.lang.String field, LikeOp likeOp, boolean refValue)
column_name LIKE '%$<column_name>%'test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则默认为'true'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略likeOp - 模糊匹配方式refValue - 为true或left为null或空生成表达式对field 视为变量名,否则视为常量public BeanShellWhereBuilder like(java.lang.String test, java.lang.String[] testNullVars, java.lang.String[] testNonullVars, java.lang.String[] testEmptyVars, java.lang.String[] testNoEmptyVars, java.lang.String[] testTrueVars, java.lang.String[] testFalseVars, java.lang.String left, java.lang.String field, LikeOp likeOp, boolean refValue)
column_name LIKE '%$<column_name>%'test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则默认为'true'testNullVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testNonullVars - 要求不为null的变量名列表,['var1','var2'],等价于'null!=${var1} && null!=${var2}',为null或空则默认为'true'testEmptyVars - 要求为null或空的变量名列表,['var1','var2'],等价于'isEmpty(${var1}) && isEmpty(${var2})',为null或空则默认为'true'testNoEmptyVars - 要求不为null或空的变量名列表,['var1','var2'],等价于'!isEmpty(${var1}) && !isEmpty(${var2})',为null或空则默认为'true'testTrueVars - 要求为true的变量名列表,['var1','var2'],等价于'isTrue(${var1)} && isTrue(${var2})',为空则默认为'true'testFalseVars - 要求为false的变量名列表,['var1','var2'],等价于'isFalse(${var1}) && isFalse(${var2})',为空则默认为'true'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略likeOp - 模糊匹配方式refValue - 为true生成表达式对field 视为变量名,否则视为常量like(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder like(java.lang.String left, java.lang.String field, LikeOp likeOp, boolean refValue)
column_name LIKE '%$<column_name>%'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略likeOp - 模糊匹配方式refValue - 为true生成表达式对field 视为变量名,否则视为常量like(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder like(java.lang.String left, java.lang.String field, boolean refValue)
column_name LIKE '%$<column_name>%'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略refValue - 为true或left为null或空生成表达式对field 视为变量名,否则视为常量like(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder like(java.lang.String left, java.lang.String field)
column_name LIKE '%$<column_name>%'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略like(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder like(java.lang.String field)
column_name LIKE '%$<column_name>%'field - 变量名,不为null或空,否则忽略like(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder likeIf(java.lang.String test, java.lang.String left, java.lang.String field, LikeOp likeOp, boolean refValue)
test 定义的表达式为true} ,则创建条件执行的两侧模糊匹配表达式,如column_name LIKE '%$<column_name>%'test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则不创建表达式left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略likeOp - 模糊匹配方式refValue - 为true生成表达式对field 视为变量名,否则视为常量like(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder likeIf(java.lang.String test, java.lang.String left, java.lang.String field, boolean refValue)
test 定义的表达式为true} ,则创建条件执行的两侧模糊匹配表达式,如column_name LIKE '%$<column_name>%'test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则不创建表达式left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略refValue - 为true生成表达式对field 视为变量名,否则视为常量like(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder likeIf(java.lang.String test, java.lang.String field)
column_name LIKE '%$<column_name>%'test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则不创建表达式field - 变量名,不为null或空,否则忽略like(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder likeIf(java.lang.String[] testVars, VarTestType testType, java.lang.String left, java.lang.String field, LikeOp likeOp, boolean refValue)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建模糊匹配表达式,如column_name LIKE '%$<column_name>%'testVars,testType为null或空则不创建表达式testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testType - 变量测试类型left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略likeOp - 模糊匹配方式refValue - 为true生成表达式对field 视为变量名,否则视为常量likeIf(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder likeIf(java.lang.String[] testVars, VarTestType testType, java.lang.String left, java.lang.String field, LikeOp likeOp)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建模糊匹配表达式,如column_name LIKE '%$<column_name>%'testVars,testType为null或空则不创建表达式testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testType - 变量测试类型left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略likeOp - 模糊匹配方式likeIf(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder likeIf(java.lang.String[] testVars, VarTestType testType, java.lang.String field, LikeOp likeOp)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建模糊匹配表达式,如column_name LIKE '%$<column_name>%'testVars,testType为null或空则不创建表达式testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'field - 变量名,不为null或空,否则忽略likeOp - 模糊匹配方式likeIf(String, String, String, LikeOp, boolean)public BeanShellWhereBuilder likeIf(java.lang.String testVar, VarTestType testType, CompareOp testOp, java.lang.Object testValue, boolean testQuote, boolean testRefValue, java.lang.String left, java.lang.String field, LikeOp likeOp, boolean refValue)
testType指定的类型测试testVar 指定的变量满足条件,则创建LIKE表达式field,testType为null或空视则忽略,不生成表达式testVar - 条件测试表达式变量名,为null或空则默认为fieldtestType - 变量测试类型testOp - 条件测试操作符testValue - 变量条件测试的目标值testQuote - 为true生成表达式对testValue 以字符串对头尾增加单引号,refValue为true时忽略testRefValue - 为true生成表达式对testValue 视为变量名left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 创建等价表达式的字段名likeOp - 模糊匹配方式refValue - 为true生成表达式对field 视为变量名,否则视为常量public BeanShellWhereBuilder compare(java.lang.String test, java.lang.String left, java.lang.String field, CompareOp op, boolean quote, boolean refValue, java.lang.Boolean checkFieldEmpty)
column_name > $<column_name>checkFieldEmpty 为true对field指定的变量执行判断空检查,如果不为null或空则创建表达式,
当 checkFieldEmpty 为false对field指定的变量执行判断null检查,如果不为null则创建表达式,test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则默认为'true'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号refValue - 为true生成表达式对field 视为变量名,否则视为常量checkFieldEmpty - 是否对field指定的变量执行判断空检查,此参数对于类型为String的参数有影响true -- field指定的变量执行判断空检查false -- 只需要判断是否为nullquotepublic BeanShellWhereBuilder compare(java.lang.String test, java.lang.String[] testNullVars, java.lang.String[] testNonullVars, java.lang.String[] testEmptyVars, java.lang.String[] testNoEmptyVars, java.lang.String[] testTrueVars, java.lang.String[] testFalseVars, java.lang.String left, java.lang.String field, CompareOp compareOp, boolean quote, java.lang.Boolean checkFieldEmpty)
column_name > $<column_name>test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则默认为'true'testNullVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testNonullVars - 要求不为null的变量名列表,['var1','var2'],等价于'null!=${var1} && null!=${var2}',为null或空则默认为'true'testEmptyVars - 要求为null或空的变量名列表,['var1','var2'],等价于'isEmpty(${var1}) && isEmpty(${var2})',为null或空则默认为'true'testNoEmptyVars - 要求不为null或空的变量名列表,['var1','var2'],等价于'!isEmpty(${var1}) && !isEmpty(${var2})',为null或空则默认为'true'testTrueVars - 要求为true的变量名列表,['var1','var2'],等价于'isTrue(${var1)} && isTrue(${var2})',为空则默认为'true'testFalseVars - 要求为false的变量名列表,['var1','var2'],等价于'isFalse(${var1}) && isFalse(${var2})',为空则默认为'true'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略compareOp - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号checkFieldEmpty - 是否对field指定的变量执行判断空检查,此参数对于类型为String的参数有影响compare(String, String, String, CompareOp, boolean, boolean, Boolean)public BeanShellWhereBuilder compare(java.lang.String left, java.lang.String field, CompareOp op, boolean quote, boolean refValue)
column_name > $<column_name>left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号refValue - 为true生成表达式对field 视为变量名,否则视为常量compare(String, String, String, CompareOp, boolean, boolean, Boolean)public BeanShellWhereBuilder compare(java.lang.String left, java.lang.String field, CompareOp op, boolean quote)
column_name > $<column_name>left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号compare(String, String, String, CompareOp, boolean, boolean, Boolean)public BeanShellWhereBuilder compare(java.lang.String field, CompareOp op, boolean quote)
column_name > $<column_name>field - 变量名,不为null或空,否则忽略op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号compare(String, String, String, CompareOp, boolean, boolean, Boolean)public BeanShellWhereBuilder compareIf(java.lang.String test, java.lang.String left, java.lang.String field, CompareOp op, boolean quote, boolean refValue)
test 定义的表达式为true} ,则创建算述比较表达式,如column_name > $<column_name>test - 判断条件,条件为'true'则生成比较表达式,为null或空则不创建表达式left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号refValue - 为true生成表达式对field 视为变量名,否则视为常量compare(String, String, String, CompareOp, boolean, boolean, Boolean)public BeanShellWhereBuilder compareIf(java.lang.String test, java.lang.String field, CompareOp op, boolean quote)
test 定义的表达式为true} ,则如果test 定义的表达式为true} ,则创建算述比较表达式,如column_name > $<column_name>test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则默认为'true'field - 变量名,不为null或空,否则忽略op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号compareIf(String, String, String, CompareOp, boolean, boolean)public BeanShellWhereBuilder compareIf(java.lang.String[] testVars, VarTestType testType, java.lang.String left, java.lang.String field, CompareOp op, boolean quote)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建算述比较表达式,如column_name > $<column_name>testVars,testType为null或空视为true,testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 变量名,不为null或空,否则忽略op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号compareIf(String, String, String, CompareOp, boolean, boolean)public BeanShellWhereBuilder compareIf(java.lang.String[] testVars, VarTestType testType, java.lang.String field, CompareOp op, boolean quote)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建算述比较表达式,如column_name > $<column_name>testVars,testType为null或空视为true,testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'field - 变量名,不为null或空,否则忽略op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号compareIf(String, String, String, CompareOp, boolean, boolean)public BeanShellWhereBuilder compareIf(java.lang.String testVar, VarTestType testType, CompareOp testOp, java.lang.Object testValue, boolean testQuote, boolean testRefValue, java.lang.String left, java.lang.String field, CompareOp op, boolean quote, boolean refValue)
testType指定的类型测试testVar 指定的变量满足条件,则创建算述比较表达式,
如column_name > $(column_name)field,testType为null或空视则忽略,不生成表达式testVar - 条件测试表达式变量名,为null或空则默认为fieldtestType - 变量测试类型testOp - 条件测试操作符testValue - 变量条件测试的目标值testQuote - 为true生成表达式对testValue 以字符串对头尾增加单引号,refValue为true时忽略testRefValue - 为true生成表达式对testValue 视为变量名left - 为'.'结尾的字符串,则left被视为表名前缀,其左侧表达式值拼接会field,示例left为'dcc.',field为'name',则左侧表达式为'dcc.name'field - 创建等价表达式的字段名op - 算述比较运算符quote - 为true生成表达式对数值以字符串对头尾增加单引号refValue - 为true生成表达式对field 视为变量名,否则视为常量public BeanShellWhereBuilder range(java.lang.String test, java.lang.String field, java.lang.String lowerVar, java.lang.String lowerSuffix, boolean lowerRefValue, java.lang.String upperVar, java.lang.String upperSuffix, boolean upperRefValue, RangeType rangeType, boolean quote, java.lang.Boolean checkFieldEmpty)
column_name > $(column_name_min) && column_name <= $(column_name_max)checkFieldEmpty 为true对field指定的变量执行判断空检查,如果不为null或空则创建表达式,
当 checkFieldEmpty 为false对field指定的变量执行判断null检查,如果不为null则创建表达式,test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则默认为'true'field - 字段名,不为null或空,否则忽略lowerVar - 左侧范围(较小值)变量名,不为null或空,否则忽略lowerSuffix - 左侧范围(较小值)变量名后缀lowerRefValue - 为true生成SQL表达式对lowerVar视为变量名,否则视为常量upperVar - 右侧范围(较大值) 变量名,不为null或空,否则忽略upperSuffix - 右侧范围(较大值) 变量名后缀upperRefValue - 为true生成SQL表达式对upperVar 视为变量名,否则视为常量rangeType - 范围类型quote - 为true生成表达式对数值以字符串对头尾增加单引号checkFieldEmpty - 是否对field指定的变量执行判断空检查,此参数对于类型为String的参数有影响true -- field指定的变量执行判断空检查false -- 只需要判断是否为nullquotepublic BeanShellWhereBuilder range(java.lang.String test, java.lang.String[] testNullVars, java.lang.String[] testNonullVars, java.lang.String[] testEmptyVars, java.lang.String[] testNoEmptyVars, java.lang.String[] testTrueVars, java.lang.String[] testFalseVars, java.lang.String field, java.lang.String lowerVar, java.lang.String lowerSuffix, boolean lowerRefValue, java.lang.String upperVar, java.lang.String upperSuffix, boolean upperRefValue, RangeType rangeType, boolean quote, java.lang.Boolean checkFieldEmpty)
column_name > $(column_name_min) && column_name <= $(column_name_max)test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则默认为'true'testNullVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'testNonullVars - 要求不为null的变量名列表,['var1','var2'],等价于'null!=${var1} && null!=${var2}',为null或空则默认为'true'testEmptyVars - 要求为null或空的变量名列表,['var1','var2'],等价于'isEmpty(${var1}) && isEmpty(${var2})',为null或空则默认为'true'testNoEmptyVars - 要求不为null或空的变量名列表,['var1','var2'],等价于'!isEmpty(${var1}) && !isEmpty(${var2})',为null或空则默认为'true'testTrueVars - 要求为true的变量名列表,['var1','var2'],等价于'isTrue(${var1)} && isTrue(${var2})',为空则默认为'true'testFalseVars - 要求为false的变量名列表,['var1','var2'],等价于'isFalse(${var1}) && isFalse(${var2})',为空则默认为'true'field - 字段名,不为null或空,否则忽略lowerVar - 左侧范围(较小值)变量名,不为null或空,否则忽略lowerSuffix - 左侧范围(较小值)变量名后缀lowerRefValue - 为true生成SQL表达式对lowerVar视为变量名,否则视为常量upperVar - 右侧范围(较大值) 变量名,不为null或空,否则忽略upperSuffix - 右侧范围(较大值) 变量名后缀upperRefValue - 为true生成SQL表达式对upperVar 视为变量名,否则视为常量rangeType - 范围类型quote - 为true生成表达式对数值以字符串对头尾增加单引号checkFieldEmpty - 是否对field指定的变量执行判断空检查,此参数对于类型为String的参数有影响range(String, String, String, String, boolean, String, String, boolean, RangeType, boolean, Boolean)public BeanShellWhereBuilder range(java.lang.String field, java.lang.String lowerVar, java.lang.String lowerSuffix, boolean lowerRefValue, java.lang.String upperVar, java.lang.String upperSuffix, boolean upperRefValue, RangeType rangeType, boolean quote)
column_name > $(column_name_min) && column_name <= $(column_name_max)field - 字段名,不为null或空,否则忽略lowerVar - 左侧范围(较小值)变量名,不为null或空,否则忽略lowerSuffix - 左侧范围(较小值)变量名后缀lowerRefValue - 为true生成SQL表达式对lowerVar视为变量名,否则视为常量upperVar - 右侧范围(较大值) 变量名,不为null或空,否则忽略upperSuffix - 右侧范围(较大值) 变量名后缀upperRefValue - 为true生成SQL表达式对upperVar 视为变量名,否则视为常量rangeType - 范围类型,为null则视为默认值: RangeType.OPENCLOSEquote - 为true生成表达式对数值以字符串对头尾增加单引号range(String, String, String, String, boolean, String, String, boolean, RangeType, boolean, Boolean)public BeanShellWhereBuilder range(java.lang.String field, java.lang.String lowerVar, java.lang.String upperVar, RangeType rangeType, boolean quote)
column_name > $(column_name_min) && column_name <= $(column_name_max)field - 字段名,不为null或空,否则忽略lowerVar - 左侧范围(较小值)变量名,不为null或空,否则忽略upperVar - 右侧范围(较大值) 变量名,不为null或空,否则忽略rangeType - 范围类型,为null则视为默认值: RangeType.OPENCLOSEquote - 为true生成表达式对数值以字符串对头尾增加单引号range(String, String, String, String, boolean, String, String, boolean, RangeType, boolean, Boolean)public BeanShellWhereBuilder range(java.lang.String field, RangeType rangeType, boolean quote)
column_name > $(column_name_min) && column_name <= $(column_name_max)field - 字段名,不为null或空,否则忽略rangeType - 范围类型,为null则视为默认值: RangeType.OPENCLOSEquote - 为true生成表达式对数值以字符串对头尾增加单引号range(String, String, String, String, boolean, String, String, boolean, RangeType, boolean, Boolean)public BeanShellWhereBuilder range(java.lang.String field, boolean quote)
column_name > $(column_name_min) && column_name <= $(column_name_max)RangeType.OPENCLOSEfield - 字段名,不为null或空,否则忽略quote - 为true生成表达式对数值以字符串对头尾增加单引号range(String, String, String, String, boolean, String, String, boolean, RangeType, boolean, Boolean)public BeanShellWhereBuilder rangeIf(java.lang.String test, java.lang.String field, java.lang.String lowerVar, java.lang.String lowerSuffix, boolean lowerRefValue, java.lang.String upperVar, java.lang.String upperSuffix, boolean upperRefValue, RangeType rangeType, boolean quote)
test 定义的表达式为true} ,则创建数值范围算述比较表达式,如column_name > $(lower_value)> && column_name <= $(upper_value)test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则不创建表达式field - 字段名,不为null或空,否则忽略lowerVar - 左侧范围(较小值)变量名,不为null或空,否则忽略lowerSuffix - 左侧范围(较小值)变量名后缀lowerRefValue - 为true生成SQL表达式对lowerVar视为变量名,否则视为常量upperVar - 右侧范围(较大值) 变量名,不为null或空,否则忽略upperSuffix - 右侧范围(较大值) 变量名后缀upperRefValue - 为true生成SQL表达式对upperVar 视为变量名,否则视为常量rangeType - 范围类型,为null则视为默认值: RangeType.OPENCLOSEquote - 为true生成表达式对数值以字符串对头尾增加单引号range(String, String, String, String, boolean, String, String, boolean, RangeType, boolean, Boolean)public BeanShellWhereBuilder rangeIf(java.lang.String test, java.lang.String field, java.lang.String lowerVar, java.lang.String upperVar, RangeType rangeType, boolean quote)
test 定义的表达式为true} ,则创建数值范围算述比较表达式,如column_name > $(column_name_min) && column_name <= $(column_name_max)test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则不创建表达式field - 字段名,不为null或空,否则忽略lowerVar - 左侧范围(较小值)变量名,不为null或空,否则忽略upperVar - 右侧范围(较大值) 变量名,不为null或空,否则忽略rangeType - 范围类型,为null则视为默认值: RangeType.OPENCLOSEquote - 为true生成表达式对数值以字符串对头尾增加单引号rangeIf(String, String, String, String, boolean, String, String, boolean, RangeType, boolean)public BeanShellWhereBuilder rangeIf(java.lang.String test, java.lang.String field, boolean quote)
test 定义的表达式为true} ,则创建数值范围算述比较表达式,如column_name > $(column_name_min) && column_name <= $(column_name_max)test - 判断条件,条件为'true'则生成LIKE表达式,为null或空则不创建表达式field - 字段名,不为null或空,否则忽略quote - 为true生成表达式对数值以字符串对头尾增加单引号rangeIf(String, String, String, String, boolean, String, String, boolean, RangeType, boolean)public BeanShellWhereBuilder rangeIf(java.lang.String[] testVars, VarTestType testType, java.lang.String field, java.lang.String lowerVar, java.lang.String lowerSuffix, boolean lowerRefValue, java.lang.String upperVar, java.lang.String upperSuffix, boolean upperRefValue, RangeType rangeType, boolean quote)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建数值范围算述比较表达式,如column_name > $(column_name_min) && column_name <= $(column_name_max)testVars,testType为null或空视为true,testVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'field - 字段名,不为null或空,否则忽略lowerVar - 左侧范围(较小值)变量名,不为null或空,否则忽略lowerSuffix - 左侧范围(较小值)变量名后缀lowerRefValue - 为true生成SQL表达式对lowerVar视为变量名,否则视为常量upperVar - 右侧范围(较大值) 变量名,不为null或空,否则忽略upperSuffix - 右侧范围(较大值) 变量名后缀upperRefValue - 为true生成SQL表达式对upperVar 视为变量名,否则视为常量rangeType - 范围类型,为null则视为默认值: RangeType.OPENCLOSEquote - 为true生成表达式对数值以字符串对头尾增加单引号rangeIf(String, String, String, String, boolean, String, String, boolean, RangeType, boolean)public BeanShellWhereBuilder rangeIf(java.lang.String[] testNullVars, VarTestType testType, java.lang.String field, java.lang.String lowerVar, java.lang.String upperVar, RangeType rangeType, boolean quote)
testType指定的类型测试testVars 指定的变量所有变量都满足条件,则创建数值范围算述比较表达式,如column_name > $(column_name_min) && column_name <= $(column_name_max)testVars,testType为null或空视为true,testNullVars - 要求为null的变量名列表,['var1','var2'],等价于'null==${var1} && null==${var2}',为null或空则默认为'true'field - 字段名,不为null或空,否则忽略lowerVar - 左侧范围(较小值)变量名,不为null或空,否则忽略upperVar - 右侧范围(较大值) 变量名,不为null或空,否则忽略rangeType - 范围类型,为null则视为默认值: RangeType.OPENCLOSEquote - 为true生成表达式对数值以字符串对头尾增加单引号rangeIf(String, String, String, String, boolean, String, String, boolean, RangeType, boolean)public BeanShellWhereBuilder selectFrom(java.lang.String selectFrom)
selectFrom - select 语句(不含 WHERE部分),为null忽略public BeanShellWhereBuilder orderBy(java.lang.String columnName, boolean desc)
columnName - order by 字段名desc - 排序方式,为true降序public BeanShellWhereBuilder orderBy(java.lang.String columnName)
columnName - order by 字段名,为null或空忽略public BeanShellWhereBuilder orderByVar(java.lang.String varName)
varName - order by 字段字段名,为null或空忽略public BeanShellWhereBuilder groupBy(java.lang.String... columnNames)
columnNames - group by 字段名列表,为null忽略public BeanShellWhereBuilder groupByVar(java.lang.String varName)
varName - group by 字段变量名,为null或空忽略public BeanShellWhereBuilder imports(java.lang.String... imports)
null或空忽略。
如: import xxx..xxx.ClassA; 或只提供导入类全名 xxx..xxx.ClassAimports - public BeanShellWhereBuilder withImports(java.lang.Iterable<java.lang.String> imports)
null或空忽略。
如: import xxx..xxx.ClassA;或只提供导入类全名 xxx..xxx.ClassAimports - public BeanShellWhereBuilder from(java.lang.annotation.Annotation[] annots)
annots - public WhereHelper build()
WhereHelper实例Copyright © 2024. All Rights Reserved.