這篇文章主要講解了“怎么理解MyBatis中的JdbcType映射”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“怎么理解MyBatis中的JdbcType映射”吧!

Java項(xiàng)目涉及到數(shù)據(jù)庫(kù)交互,以往常用的是JDBC,現(xiàn)在則有Hibernate、Mybatis等這些持久化支持。
項(xiàng)目中用到了MyBatis,和JDBC最顯著的區(qū)別,就是SQL語(yǔ)句配置化,通過(guò)xml文件定義SQL語(yǔ)句,當(dāng)然JDBC也可以將SQL配置化,需要定制開(kāi)發(fā),MyBatis則直接支持這種方法。
官方對(duì)于MyBatis的介紹,
MyBatis is a first class persistence framework with support for custom SQL, stored procedures and advanced mappings. MyBatis eliminates almost all of the JDBC code and manual setting of parameters and retrieval of results. MyBatis can use simple XML or Annotations for configuration and map primitives, Map interfaces and Java POJOs (Plain Old Java Objects) to database records.
簡(jiǎn)單來(lái)講,MyBatis幾乎屏蔽了所有JDBC代碼,用一種簡(jiǎn)單的xml,或者注解,就能完成數(shù)據(jù)庫(kù)交互。
xml配置文件,可用MyBatis自己定義的數(shù)據(jù)類型,引自:http://www.mybatis.org/mybatis-3/configuration.html
Associated JDBC type can be specified by two means:
Adding a jdbcType attribute to the typeHandler element (for example: jdbcType="VARCHAR").
Adding a @MappedJdbcTypes annotation to your TypeHandler class specifying the list of JDBC types to associate it with. This annotation will be ignored if the jdbcType attribute as also been specified.
例如下面的配置,指定companyid參數(shù)類型為BIGINT,
<select id='getMeetingnoByCompanyid' parameterType="java.lang.Integer"
resultType="java.lang.String">
select a.meetingno
from xxx a
where a.companyid = #{companyid, jdbcType=BIGINT}
</select>
對(duì)于jdbcType,MyBatis的API文檔有說(shuō)明,引自:http://www.mybatis.org/mybatis-3/apidocs/reference/org/apache/ibatis/type/JdbcType.html
另外,這篇文章,給出了JdbcType和Oracle以及MySQL,相互之間的映射關(guān)系,比較詳細(xì),引自:http://blog.csdn.net/loongshawn/article/details/50496460
| JdbcType | Oracle | MySql | |
|---|---|---|---|
| JdbcType | ARRAY | ||
| JdbcType | BIGINT | BIGINT | |
| JdbcType | BINARY | ||
| JdbcType | BIT | BIT | |
| JdbcType | BLOB | BLOB | BLOB |
| JdbcType | BOOLEAN | ||
| JdbcType | CHAR | CHAR | CHAR |
| JdbcType | CLOB | CLOB | 修改為TEXT |
| JdbcType | CURSOR | ||
| JdbcType | DATE | DATE | DATE |
| JdbcType | DECIMAL | DECIMAL | DECIMAL |
| JdbcType | DOUBLE | NUMBER | DOUBLE |
| JdbcType | FLOAT | FLOAT | FLOAT |
| JdbcType | INTEGER | INTEGER | INTEGER |
| JdbcType | LONGVARBINARY | ||
| JdbcType | LONGVARCHAR | LONG VARCHAR | |
| JdbcType | NCHAR | NCHAR | |
| JdbcType | NCLOB | NCLOB | |
| JdbcType | NULL | ||
| JdbcType | NUMERIC | NUMERIC/NUMBER | NUMERIC/ |
| JdbcType | NVARCHAR | ||
| JdbcType | OTHER | ||
| JdbcType | REAL | REAL | REAL |
| JdbcType | SMALLINT | SMALLINT | SMALLINT |
| JdbcType | STRUCT | ||
| JdbcType | TIME | TIME | |
| JdbcType | TIMESTAMP | TIMESTAMP | TIMESTAMP/DATETIME |
| JdbcType | TINYINT | TINYINT | |
| JdbcType | UNDEFINED | ||
| JdbcType | VARBINARY | ||
| JdbcType | VARCHAR | VARCHAR | VARCHAR |
感謝各位的閱讀,以上就是“怎么理解MyBatis中的JdbcType映射”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)怎么理解MyBatis中的JdbcType映射這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
分享題目:怎么理解MyBatis中的JdbcType映射-創(chuàng)新互聯(lián)
本文地址:http://www.chinadenli.net/article24/djdpje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、云服務(wù)器、虛擬主機(jī)、動(dòng)態(tài)網(wǎng)站、域名注冊(cè)、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容