Mybatis所支持的jdbcType类型,是固定的,枚举如下:
BIT、 FLOAT、CHAR、TIMESTAMP、OTHER、 UNDEFINED、TINYINT、REAL、VARCHAR、BINARY、BLOB、 NVARCHAR、SMALLINT、DOUBLE、LONGVARCHAR、VARBINARY、CLOB、NCHAR、INTEGER、NUMERIC、DATE、LONGVARBINARY、BOOLEAN 、NCLOB、BIGINT、DECIMAL、TIME、NULL、CURSOR
其中并没有LONG这个类型,LONG对应的类型应该是BIGINT.
注意:在书写jabcType类型的时候,是有严格的大小写的区分的,否则会抛出异常,即mybatis所定义的类型常量枚举不存在。
下面附上一张数据库类型与Java类型对应表:
java类 | mysql数据库 | |
java.lang.Byte | byte | TINYINT |
java.lang.Short | short | SMALLINT |
java.lang.Integer | integer | INGEGER |
java.lang.Long | long | BIGINT |
java.lang.Float | float | FLOAT |
java.lang.Double | double | DOUBLE |
java.lang.BigDecimal | big_decimal | NUMERIC |
java.lang.Boolean | boolean | BIT |
java.lang.String | string | VARCHAR |
java.lang.Boolean | yes_no | CHAR(1)('Y'或'N') |
java.lang.Boolean | true_false | CHAR(1)(‘Y’或'N') |
java.uitl.Date / java.sql.Date | date | DATE |
java.sql.Time | time | TIME |
java.sql.Timestamp | timestamp | TIMESTAMP |
java.uitl.Calendar | celendar | TIMESTAMP |
java.uitl.Calendar | calendar | TIMESTAMP |
java.io.Serializable | serializable | VARBINARY/BLOB |
java.sql.Clob | clob | CLOB |
java.sql.Blob | blob | BLOB |
java.lang.Class | class | VARCHAR |
java.uitl.Locale | locale | VARCHAR |
java.uitl.TimeZone | timezone | VARCHAR |
java.uitl.Currency | currency | VARCHAR |