嗨!各位英俊潇洒,气质非凡,风流倜傥,玉树临风,仪表堂堂,表里不一的小伙伴们!我来了,我就是辣个村里最靓的仔!别被我的气质帅倒哦.
今天给大家带来jdbcType类型的转换!
1. Mybatis支持的JDBC类型
java.sql.Types 值 | Java Type | IBM DB2 | Oracle | Sybase | SQL | Informix | IBM Content Manager |
---|---|---|---|---|---|---|---|
BIGINT | java.lang.long | BIGINT | NUMBER (38, 0) | BIGINT | BIGINT | INT8 | DK_CM_BIGINT |
BINARY | byte[] | CHAR FOR BIT DATA | RAW | BINARY | IMAGE | BYTE | DK_CM_BLOB |
BIT | java.lang.Boolean | N/A | BIT | BIT | BIT | BIT | DK_CM_SMALLINT |
BLOB | byte[] | BLOB | BLOB | BLOB | BLOB | BLOB | DK_CM_BLOB |
CHAR | java.lang.String | CHAR, GRAPHIC | CHAR | CHAR | CHAR | CHAR | DK_CM_CHAR |
CLOB | java.lang.String | CLOB, DBCLOB | CLOB | CLOB | CLOB | CLOB | DK_CM_CLOB |
DATE | java.sql.Date | DATE | DATE | DATE | DATE | DATE | DK_CM_DATE |
DECIMAL | java.math.BigDecimal | DECIMAL | NUMBER | DECIMAL, MONEY, SMALLMONEY | DECIMAL | DECIMAL | DK_CM_DECIMAL |
DOUBLE | java.lang.Double | DOUBLE | DOUBLE PRECISION | DOUBLE PRECISION | DOUBLE PRECISION | DOUBLE PRECISION | DK_CM_DOUBLE |
FLOAT | java.lang.Double | FLOAT | FLOAT | FLOAT | FLOAT | FLOAT | DK_CM_DOUBLE |
INTEGER | java.lang.Integer | INTEGER | INTEGER | INT | INTEGER | INTEGER | DK_CM_INTEGER |
JAVA_OBJECT | java.lang.Object | JAVA_OBJECT | JAVA_OBJECT | JAVA_OBJECT | JAVA_OBJECT | OPAQUE | N/A |
LONGVARBINARY | byte[] | LONG VARCHAR FOR BIT DATA | LONG RAW | IMAGE | IMAGE | BYTE | DK_CM_BLOB |
LONGVARCHAR | java.lang.String | LONG VARCHAR, LONG VARGRAPHIC | LONG | TEXT | TEXT | TEXT | DK_CM_VARCHAR(3500) |
NUMERIC | java.math.BigDecimal | NUMERIC | NUMERIC | NUMERIC | NUMERIC | NUMERIC | DK_CM_DECIMAL |
OTHER | java.lang.Object | OTHER | OTHER | OTHER | OTHER | OTHER | N/A |
REAL | java.lang.Float | REAL | REAL | REAL | REAL | REAL | DK_CM_DOUBLE |
SMALLINT | java.lang.Integer | SMALLINT | SMALLINT | SMALLINT | SMALLINT | SMALLINT | DK_CM_INTEGER |
TIME | java.sql.Time | TIME | DATE | TIME | TIME | DATETIME HOUR TO SECOND | DK_CM_TIME |
TIMESTAMP | java.sql.Timestamp | TIMESTAMP | DATE | DATETIME, SMALLDATETIME | DATETIME | DATETIME YEAR TO FRACTION (5) | DK_CM_TIMESTAMP |
TINYINT | java.lang.Bute | SMALLINT | TINYINT | TINYINT | TINYINT | TINYINT | DK_CM_INTEGER |
VARBINARY | byte[] | VARCHAR FOR BIT DATA | RAW | VARBINARY | IMAGE | BYTE | DK_CM_BLOB |
VARCHAR | java.lang.String | VARCHAR, VARGRAPHIC | VARCHAR | VARCHAR | VARCHAR | VARCHAR | DK_CM_VARCHAR |
注意:
JDBC类型是仅仅需要对插入,更新和删除操作可能为空的列进行处理。这是JDBC的需要,而不是MyBatis的。
2. Mybatis中javaType和jdbcType对应和CRUD例子
<resultMap type="java.util.Map" id="resultSmart">
<result property="SMART_NUMBER" column="SMART_NUMBER" javaType="double" jdbcType="NUMERIC"/>
<result property="SMART_VARCHAR" column="SMART_VARCHAR" javaType="string" jdbcType="VARCHAR"/>
<result property="SMART_DATE" column="SMART_DATE" javaType="java.sql.Date" jdbcType="DATE"/>
<result property="SMART_INTEGER" column="SMART_INTEGER" javaType="int" jdbcType="INTEGER"/>
<result property="SMART_DOUBLE" column="SMART_DOUBLE" javaType="double" jdbcType="DOUBLE"/>
<result property="SMART_LONG" column="SMART_LONG" javaType="long" jdbcType="INTEGER"/>
<result property="SMART_CHAR" column="SMART_CHAR" javaType="string" jdbcType="CHAR"/>
<result property="SMART_BLOB" column="SMART_BLOB" javaType="[B" jdbcType="BLOB" />
<result property="SMART_CLOB" column="SMART_CLOB" javaType="string" jdbcType="CLOB"/>
<result property="SMART_FLOAT" column="SMART_FLOAT" javaType="float" jdbcType="FLOAT"/>
<result property="SMART_TIMESTAMP" column="SMART_TIMESTAMP" javaType="java.sql.Timestamp" jdbcType="TIMESTAMP"/>
</resultMap>
3.给个友谊三连再走好吗!
我是 丿烂人丶 一个为生活而努力奋斗的萌新,希望以后的路上,我们一起并肩前行!