类 DbUtil

java.lang.Object
me.magicall.db.util.DbUtil

public class DbUtil extends Object
  • 字段详细资料

    • PLACE_HOLDER

      public static final String PLACE_HOLDER
      另请参阅:
    • RESULT_SET_COLUMN_START_INDEX

      public static final int RESULT_SET_COLUMN_START_INDEX
      java.sql.ResultSet的列下标是从1开始的
      另请参阅:
    • PREPARED_STATEMENT_PARAMETER_START_INDEX

      public static final int PREPARED_STATEMENT_PARAMETER_START_INDEX
      java.sql.PreparedStatement参数列表下标是从1开始的.
      另请参阅:
    • COMMON_ID_FIELD_NAME

      public static final String COMMON_ID_FIELD_NAME
      另请参阅:
    • COMMON_ID_COLUMN_NAME

      public static final String COMMON_ID_COLUMN_NAME
    • ELEMENTS_COUNT_TO_PLACE_HOLDER

      public static final ElementTransformer<Object,String> ELEMENTS_COUNT_TO_PLACE_HOLDER
      为集合中的每一个元素预留一个占位符
    • COMMON_DB_TYPE_CONVERTER

      public static final DbUtil.DbTypeConvert COMMON_DB_TYPE_CONVERTER
    • TABLE_NAME_COLUMN_NAME_SEPARATOR_CHAR

      public static final char TABLE_NAME_COLUMN_NAME_SEPARATOR_CHAR
      另请参阅:
    • TABLE_NAME_COLUMN_NAME_SEPARATOR

      public static final String TABLE_NAME_COLUMN_NAME_SEPARATOR
    • COLUMN_NAME_TO_FIELD_NAME

      public static final ElementTransformer<String,String> COLUMN_NAME_TO_FIELD_NAME
      将列名转化成字段名
  • 构造器详细资料

    • DbUtil

      public DbUtil()
  • 方法详细资料

    • getDbTypeConvert

      public static DbUtil.DbTypeConvert getDbTypeConvert(Class<?> clazz)
    • isDbType

      public static boolean isDbType(Class<?> clazz)
    • findColumn

      public static DbColumn findColumn(TableMeta tableMeta, String javaFieldName)
      在指定的表的元数据中寻找指定的字段所对应的列的元数据.
      参数:
      tableMeta -
      javaFieldName -
      返回:
    • idIsInt

      public static boolean idIsInt(TableMeta tableMeta)
      //注:目前只支持单字段主键 //目前只支持Integer和Long的id
      参数:
      tableMeta -
      返回:
    • buildSql_inParamName

      public static StringBuilder buildSql_inParamName(StringBuilder sb, Collection<?> coll, String paramNamePrefix)
    • appendInPlaceHolder

      public static StringBuilder appendInPlaceHolder(StringBuilder sb, Collection<?> coll)
      拼接in子句,使用'?'作为占位符,个数=coll.size()
      参数:
      sb -
      coll -
      返回:
    • appendParameterPlaceHolder

      public static StringBuilder appendParameterPlaceHolder(StringBuilder sb, Collection<?> coll)
    • buildSql_Insert

      public static StringBuilder buildSql_Insert(List<String> columnNames, String tableName, ElementTransformer<String,String> placeHolderTF)
    • buildSql_Insert

      public static StringBuilder buildSql_Insert(TableMeta tableMeta, ElementTransformer<String,String> placeHolderTF)
    • buildSql_UpdateSetValuePart

      public static StringBuilder buildSql_UpdateSetValuePart(StringBuilder sb, List<String> columnNames, ElementTransformer<String,String> placeHolderTF, boolean escapeId)
    • buildSql_SelectAllFrom

      public static StringBuilder buildSql_SelectAllFrom(String tableName, List<String> columnNames)
    • buildSql_SelectAllFromWhereId

      public static StringBuilder buildSql_SelectAllFromWhereId(String tableName, List<String> columnNames)
    • buildSql_SelectAllFromWhereId

      public static StringBuilder buildSql_SelectAllFromWhereId(String tableName, List<String> columnNames, String idColumnName)
    • buildSql_SelectAllFrom

      public static StringBuilder buildSql_SelectAllFrom(TableMeta tableMeta)
    • buildSql_SelectAllFromWhereId

      public static StringBuilder buildSql_SelectAllFromWhereId(TableMeta tableMeta)
    • appendLimit

      public static StringBuilder appendLimit(StringBuilder sb, PageInfo pageInfo)
    • buildDeleteFromTable

      public static StringBuilder buildDeleteFromTable(String modelName)
    • appendOrderBy

      public static StringBuilder appendOrderBy(StringBuilder sb, FieldComparator<?> fieldComparator)
    • getIdFromResultSet

      public static Object getIdFromResultSet(ResultSet resultSet, TableMeta tableMeta) throws SQLException
      抛出:
      SQLException
    • dbNameToJavaName

      public static String dbNameToJavaName(String dbName)
      将 xx_yy_zz 转换成 xxYyZz
      参数:
      dbName -
      返回:
    • dbNameToJavaName

      public static List<String> dbNameToJavaName(List<String> source)
      将xx_yy_zz转换成xxYyZz
      参数:
      source -
      返回:
    • javaNameToDbName

      public static String javaNameToDbName(String javaName)
      convert xxYyZz to xx_yy_zz
      参数:
      javaName -
      返回:
    • strInBrackets

      public static String strInBrackets(String source)
      取出最外层小括号[第一个'('和最后一个')']中的字符串.
      参数:
      source -
      返回:
    • unquote

      public static String unquote(String name)
      去掉字符串两端的引号,包括单引号、双引号、反引号(`)
      参数:
      name -
      返回:
    • quoteDbName

      public static String quoteDbName(String name)
      用反引号括起字符串
      参数:
      name -
      返回:
    • namedParam

      public static String namedParam(String fieldName)
      FIXME:注:此方法的实现与springJdbc耦合
      参数:
      fieldName -
      返回:
    • formatSqlValue

      public static StringBuilder formatSqlValue(StringBuilder sb, Object value)
      将value拼接到sb.如果是数字或布尔型,直接拼接;如果是时间类型,将其格式化为yyyy-MM-dd HH:mm:ss:SSS;其他类型当做字符串,加上引号
      参数:
      sb -
      value -
      返回:
    • main

      public static void main(String... args)