public class SqlBuilder extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
private static String |
AND |
private static String |
OR |
private static Pattern |
ORDER_BY_PATTERN |
private static String |
SQL_ORDER_BY_PATTERN
仅支持字母、数字、下划线、空格、逗号、小数点(支持多个字段排序)
|
| 构造器和说明 |
|---|
SqlBuilder() |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
appendBetweenLogic(StringBuilder sqlBuilder,
Column column,
char separator) |
private static void |
appendColumnName(StringBuilder sqlBuilder,
Column column,
char separator) |
static void |
appendGroupLogic(StringBuilder sqlBuilder,
Column before,
Group group,
char separator) |
static void |
appendInLogic(StringBuilder sqlBuilder,
Column column,
char separator) |
private static void |
appendLinkString(StringBuilder sqlBuilder,
Column before) |
private static void |
appendSqlPartLogic(StringBuilder sqlBuilder,
Column before,
SqlPart sqlPart,
char separator) |
static void |
appendTextWithSeparator(StringBuilder sqlBuilder,
String text,
char separator) |
static void |
buildAlias(StringBuilder sqlBuilder,
String alias) |
private static void |
buildByColumns(StringBuilder sqlBuilder,
List<Column> columns,
char separator) |
static void |
buildJoinSql(StringBuilder sqlBuilder,
List<Join> joins,
char separator) |
static void |
buildMysqlWhereSql(StringBuilder sqlBuilder,
List<Column> columns) |
static void |
buildWhereSql(StringBuilder sqlBuilder,
List<Column> columns,
char separator) |
static void |
buildWhereSql(StringBuilder sqlBuilder,
List<Column> columns,
char separator,
boolean appendWhereKeyword) |
static String |
escapeOrderBySql(String orignalOrderBy) |
static String |
forDeleteByColumns(String alias,
List<Join> joins,
String table,
List<Column> columns,
char separator) |
static StringBuilder |
forFindByColumns(String alias,
List<Join> joins,
String table,
String loadColumns,
List<Column> columns,
String orderBy,
char separator) |
static String |
forFindCountByColumns(String alias,
List<Join> joins,
String table,
String loadColumns,
List<Column> columns,
char separator) |
static String |
forPaginateDistinctTotalRow(String select,
String sqlExceptSelect,
Object ext) |
static String |
forPaginateFrom(String alias,
List<Join> joins,
String table,
List<Column> columns,
String orderBy,
char separator) |
private static boolean |
isAllGroupByColumns(List<Column> columns) |
private static boolean |
isValidOrderBySql(String value) |
private static String |
replaceOrderBy(String sql) |
private static final Pattern ORDER_BY_PATTERN
private static String SQL_ORDER_BY_PATTERN
public SqlBuilder()
public static void buildMysqlWhereSql(StringBuilder sqlBuilder, List<Column> columns)
public static String forDeleteByColumns(String alias, List<Join> joins, String table, List<Column> columns, char separator)
public static void buildWhereSql(StringBuilder sqlBuilder, List<Column> columns, char separator)
public static void buildWhereSql(StringBuilder sqlBuilder, List<Column> columns, char separator, boolean appendWhereKeyword)
private static boolean isAllGroupByColumns(List<Column> columns)
private static void buildByColumns(StringBuilder sqlBuilder, List<Column> columns, char separator)
private static void appendSqlPartLogic(StringBuilder sqlBuilder, Column before, SqlPart sqlPart, char separator)
private static void appendColumnName(StringBuilder sqlBuilder, Column column, char separator)
private static void appendLinkString(StringBuilder sqlBuilder, Column before)
public static void appendGroupLogic(StringBuilder sqlBuilder, Column before, Group group, char separator)
public static void appendInLogic(StringBuilder sqlBuilder, Column column, char separator)
public static void appendBetweenLogic(StringBuilder sqlBuilder, Column column, char separator)
public static void appendTextWithSeparator(StringBuilder sqlBuilder, String text, char separator)
public static StringBuilder forFindByColumns(String alias, List<Join> joins, String table, String loadColumns, List<Column> columns, String orderBy, char separator)
private static String replaceOrderBy(String sql)
public static String forPaginateDistinctTotalRow(String select, String sqlExceptSelect, Object ext)
public static String forPaginateFrom(String alias, List<Join> joins, String table, List<Column> columns, String orderBy, char separator)
public static void buildJoinSql(StringBuilder sqlBuilder, List<Join> joins, char separator)
public static void buildAlias(StringBuilder sqlBuilder, String alias)
public static String forFindCountByColumns(String alias, List<Join> joins, String table, String loadColumns, List<Column> columns, char separator)
public static String escapeOrderBySql(String orignalOrderBy)
private static boolean isValidOrderBySql(String value)
Copyright © 2024. All rights reserved.