Package cc.carm.lib.easysql.builder.impl
Class AbstractConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>
- java.lang.Object
-
- cc.carm.lib.easysql.builder.AbstractSQLBuilder
-
- cc.carm.lib.easysql.builder.impl.AbstractConditionalBuilder<B,T>
-
- All Implemented Interfaces:
ConditionalBuilder<B,T>,SQLBuilder
- Direct Known Subclasses:
DeleteBuilderImpl,TableQueryBuilderImpl,UpdateBuilderImpl
public abstract class AbstractConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>> extends AbstractSQLBuilder implements ConditionalBuilder<B,T>
-
-
Constructor Summary
Constructors Constructor Description AbstractConditionalBuilder(@NotNull SQLManagerImpl manager)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description BaddCondition(@NotNull java.lang.String[] columnNames, @Nullable java.lang.Object[] queryValues)BaddCondition(@NotNull java.lang.String columnName, @NotNull java.lang.String operator, @Nullable java.lang.Object queryValue)BaddCondition(@NotNull java.lang.String columnName, @Nullable java.lang.Object queryValue)BaddCondition(@Nullable java.lang.String condition)BaddNotNullCondition(@NotNull java.lang.String columnName)BaddTimeCondition(@NotNull java.lang.String columnName, @Nullable java.util.Date startDate, @Nullable java.util.Date endDate)添加时间的限定条件。protected java.lang.StringbuildConditionSQL()protected java.lang.StringbuildLimitSQL()protected java.util.ArrayList<java.lang.Object>getConditionParams()protected abstract BgetThis()protected booleanhasConditionParams()protected booleanhasConditions()BsetConditions(@Nullable java.lang.String condition)直接设定条件的源文本,不需要以WHERE开头。BsetConditions(java.util.LinkedHashMap<@NotNull java.lang.String,@Nullable java.lang.Object> conditions)直接设定每个条件的文本与其对应数值,将以AND链接,且不需要以WHERE开头。BsetLimit(int limit)设定限定的条目数-
Methods inherited from class cc.carm.lib.easysql.builder.AbstractSQLBuilder
getManager
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface cc.carm.lib.easysql.api.builder.ConditionalBuilder
addTimeCondition, build
-
Methods inherited from interface cc.carm.lib.easysql.api.SQLBuilder
getManager
-
-
-
-
Constructor Detail
-
AbstractConditionalBuilder
public AbstractConditionalBuilder(@NotNull @NotNull SQLManagerImpl manager)
-
-
Method Detail
-
getThis
protected abstract B getThis()
-
setConditions
public B setConditions(@Nullable @Nullable java.lang.String condition)
Description copied from interface:ConditionalBuilder直接设定条件的源文本,不需要以WHERE开头。
如id = 1 AND name = 'test' OR name = 'test2'。- Specified by:
setConditionsin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>- Parameters:
condition- 条件文本,不需要以WHERE开头。- Returns:
ConditionalBuilder
-
setConditions
public B setConditions(java.util.LinkedHashMap<@NotNull java.lang.String,@Nullable java.lang.Object> conditions)
Description copied from interface:ConditionalBuilder直接设定每个条件的文本与其对应数值,将以AND链接,且不需要以WHERE开头。
条件如id = ?,问号将被以对应的数值填充。。- Specified by:
setConditionsin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>- Parameters:
conditions- 条件内容,将以AND链接,且不需要以WHERE开头。- Returns:
ConditionalBuilder
-
addCondition
public B addCondition(@Nullable @Nullable java.lang.String condition)
- Specified by:
addConditionin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>
-
addCondition
public B addCondition(@NotNull @NotNull java.lang.String columnName, @Nullable @Nullable java.lang.Object queryValue)
- Specified by:
addConditionin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>
-
addCondition
public B addCondition(@NotNull @NotNull java.lang.String columnName, @NotNull @NotNull java.lang.String operator, @Nullable @Nullable java.lang.Object queryValue)
- Specified by:
addConditionin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>
-
addCondition
public B addCondition(@NotNull @NotNull java.lang.String[] columnNames, @Nullable @Nullable java.lang.Object[] queryValues)
- Specified by:
addConditionin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>
-
addNotNullCondition
public B addNotNullCondition(@NotNull @NotNull java.lang.String columnName)
- Specified by:
addNotNullConditionin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>
-
addTimeCondition
public B addTimeCondition(@NotNull @NotNull java.lang.String columnName, @Nullable @Nullable java.util.Date startDate, @Nullable @Nullable java.util.Date endDate)
Description copied from interface:ConditionalBuilder添加时间的限定条件。 若设定了开始时间,则限定条件为endDate >= startTime;- Specified by:
addTimeConditionin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>- Parameters:
columnName- 判断的行startDate- 开始时间,若为null则不作限定endDate- 结束时间,若为null则不作限定- Returns:
ConditionalBuilder
-
setLimit
public B setLimit(int limit)
Description copied from interface:ConditionalBuilder设定限定的条目数- Specified by:
setLimitin interfaceConditionalBuilder<B extends ConditionalBuilder<B,T>,T extends SQLAction<?>>- Parameters:
limit- 条数限制- Returns:
ConditionalBuilder
-
buildConditionSQL
protected java.lang.String buildConditionSQL()
-
buildLimitSQL
protected java.lang.String buildLimitSQL()
-
getConditionParams
protected java.util.ArrayList<java.lang.Object> getConditionParams()
-
hasConditions
protected boolean hasConditions()
-
hasConditionParams
protected boolean hasConditionParams()
-
-