程序包 com.mysql.cj

类 CharsetMapping

  • 直接已知子类:
    NativeCharsetSettings

    public class CharsetMapping
    extends Object
    Mapping between MySQL charset names and Java charset names. I've investigated placing these in a .properties file, but unfortunately under most appservers this complicates configuration because the security policy needs to be changed by the user to allow the driver to read them :(
    • 字段详细资料

      • MYSQL_CHARSET_NAME_armscii8

        public static final String MYSQL_CHARSET_NAME_armscii8
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_ascii

        public static final String MYSQL_CHARSET_NAME_ascii
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_big5

        public static final String MYSQL_CHARSET_NAME_big5
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_binary

        public static final String MYSQL_CHARSET_NAME_binary
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_cp1250

        public static final String MYSQL_CHARSET_NAME_cp1250
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_cp1251

        public static final String MYSQL_CHARSET_NAME_cp1251
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_cp1256

        public static final String MYSQL_CHARSET_NAME_cp1256
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_cp1257

        public static final String MYSQL_CHARSET_NAME_cp1257
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_cp850

        public static final String MYSQL_CHARSET_NAME_cp850
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_cp852

        public static final String MYSQL_CHARSET_NAME_cp852
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_cp866

        public static final String MYSQL_CHARSET_NAME_cp866
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_cp932

        public static final String MYSQL_CHARSET_NAME_cp932
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_dec8

        public static final String MYSQL_CHARSET_NAME_dec8
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_eucjpms

        public static final String MYSQL_CHARSET_NAME_eucjpms
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_euckr

        public static final String MYSQL_CHARSET_NAME_euckr
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_gb18030

        public static final String MYSQL_CHARSET_NAME_gb18030
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_gb2312

        public static final String MYSQL_CHARSET_NAME_gb2312
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_gbk

        public static final String MYSQL_CHARSET_NAME_gbk
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_geostd8

        public static final String MYSQL_CHARSET_NAME_geostd8
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_greek

        public static final String MYSQL_CHARSET_NAME_greek
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_hebrew

        public static final String MYSQL_CHARSET_NAME_hebrew
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_hp8

        public static final String MYSQL_CHARSET_NAME_hp8
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_keybcs2

        public static final String MYSQL_CHARSET_NAME_keybcs2
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_koi8r

        public static final String MYSQL_CHARSET_NAME_koi8r
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_koi8u

        public static final String MYSQL_CHARSET_NAME_koi8u
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_latin1

        public static final String MYSQL_CHARSET_NAME_latin1
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_latin2

        public static final String MYSQL_CHARSET_NAME_latin2
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_latin5

        public static final String MYSQL_CHARSET_NAME_latin5
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_latin7

        public static final String MYSQL_CHARSET_NAME_latin7
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_macce

        public static final String MYSQL_CHARSET_NAME_macce
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_macroman

        public static final String MYSQL_CHARSET_NAME_macroman
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_sjis

        public static final String MYSQL_CHARSET_NAME_sjis
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_swe7

        public static final String MYSQL_CHARSET_NAME_swe7
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_tis620

        public static final String MYSQL_CHARSET_NAME_tis620
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_ucs2

        public static final String MYSQL_CHARSET_NAME_ucs2
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_ujis

        public static final String MYSQL_CHARSET_NAME_ujis
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_utf16

        public static final String MYSQL_CHARSET_NAME_utf16
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_utf16le

        public static final String MYSQL_CHARSET_NAME_utf16le
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_utf32

        public static final String MYSQL_CHARSET_NAME_utf32
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_utf8

        public static final String MYSQL_CHARSET_NAME_utf8
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_utf8mb3

        public static final String MYSQL_CHARSET_NAME_utf8mb3
        另请参阅:
        常量字段值
      • MYSQL_CHARSET_NAME_utf8mb4

        public static final String MYSQL_CHARSET_NAME_utf8mb4
        另请参阅:
        常量字段值
      • MYSQL_COLLATION_INDEX_utf8mb4_general_ci

        public static final int MYSQL_COLLATION_INDEX_utf8mb4_general_ci
        另请参阅:
        常量字段值
      • MYSQL_COLLATION_INDEX_utf8mb4_0900_ai_ci

        public static final int MYSQL_COLLATION_INDEX_utf8mb4_0900_ai_ci
        另请参阅:
        常量字段值
      • MYSQL_COLLATION_INDEX_binary

        public static final int MYSQL_COLLATION_INDEX_binary
        另请参阅:
        常量字段值
    • 构造器详细资料

      • CharsetMapping

        public CharsetMapping()
    • 方法详细资料

      • getStaticMysqlCharsetForJavaEncoding

        protected static String getStaticMysqlCharsetForJavaEncoding​(String javaEncoding,
                                                                     ServerVersion version)
      • getStaticCollationIndexForJavaEncoding

        protected static int getStaticCollationIndexForJavaEncoding​(String javaEncoding,
                                                                    ServerVersion version)
      • getStaticCollationIndexForMysqlCharsetName

        protected static int getStaticCollationIndexForMysqlCharsetName​(String charsetName)
      • getStaticMysqlCharsetNameForCollationIndex

        public static String getStaticMysqlCharsetNameForCollationIndex​(Integer collationIndex)
      • getStaticCollationNameForCollationIndex

        public static String getStaticCollationNameForCollationIndex​(Integer collationIndex)
      • getStaticCollationIndexForCollationName

        protected static Integer getStaticCollationIndexForCollationName​(String collationName)
      • getStaticJavaEncodingForMysqlCharset

        protected static String getStaticJavaEncodingForMysqlCharset​(String mysqlCharsetName,
                                                                     String fallbackJavaEncoding)
        MySQL charset could map to several Java encodings. So here we choose the one according to next rules:
        • if there is no static mapping for this charset then return javaEncoding value as is because this could be a custom charset for example
        • if static mapping exists and javaEncoding equals to one of Java encoding canonical names or aliases available for this mapping then javaEncoding value as is; this is required when result should match to connection encoding, for example if connection encoding is Cp943 we must avoid getting SHIFT_JIS for sjis mysql charset
        • if static mapping exists and javaEncoding doesn't match any Java encoding canonical names or aliases available for this mapping then return default Java encoding (the first in mapping list)
        参数:
        mysqlCharsetName - MySQL charset name
        fallbackJavaEncoding - fall-back java encoding name
        返回:
        java encoding name
      • getStaticMysqlCharsetByName

        protected static com.mysql.cj.MysqlCharset getStaticMysqlCharsetByName​(String mysqlCharsetName)
      • getStaticMysqlCharsetAliasesByName

        protected static List<String> getStaticMysqlCharsetAliasesByName​(String mysqlCharsetName)
      • getStaticJavaEncodingForMysqlCharset

        protected static String getStaticJavaEncodingForMysqlCharset​(String mysqlCharsetName)
      • getStaticJavaEncodingForCollationIndex

        protected static String getStaticJavaEncodingForCollationIndex​(Integer collationIndex,
                                                                       String fallbackJavaEncoding)
      • getStaticJavaEncodingForCollationIndex

        public static String getStaticJavaEncodingForCollationIndex​(Integer collationIndex)
      • isStaticMultibyteCharset

        protected static boolean isStaticMultibyteCharset​(String javaEncodingName)
        Does the character set contain multi-byte encoded characters.
        参数:
        javaEncodingName - java encoding name
        返回:
        true if the character set contains multi-byte encoded characters.
      • getStaticMblen

        protected static int getStaticMblen​(String charsetName)
      • isStaticImpermissibleCollation

        protected static boolean isStaticImpermissibleCollation​(int collationIndex)