国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

MyBatis中的JdbcType映射使用詳解

瀏覽:7日期:2023-11-26 13:56:39

Java項目涉及到數(shù)據(jù)庫交互,以往常用的是JDBC,現(xiàn)在則有Hibernate、Mybatis等這些持久化支持。

項目中用到了MyBatis,和JDBC最顯著的區(qū)別,就是SQL語句配置化,通過xml文件定義SQL語句,當然JDBC也可以將SQL配置化,需要定制開發(fā),MyBatis則直接支持這種方法。

官方對于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.

簡單來講,MyBatis幾乎屏蔽了所有JDBC代碼,用一種簡單的xml,或者注解,就能完成數(shù)據(jù)庫交互。

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>

對于jdbcType,MyBatis的API文檔有說明,引自:http://www.mybatis.org/mybatis-3/apidocs/reference/org/apache/ibatis/type/JdbcType.html

MyBatis中的JdbcType映射使用詳解

另外,以下介紹給出了JdbcType和Oracle以及MySQL,相互之間的映射關(guān)系,比較詳細:

1. Mybatis JdbcType與Oracle、MySql數(shù)據(jù)類型對應(yīng)列表

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中部分沒有對應(yīng)到Oracle和Mysql的數(shù)據(jù)類型中(或許由于自己遺漏),不過不用擔心,后續(xù)大家碰到再具體分析;同時上述對應(yīng)關(guān)系不一定是一一對應(yīng),請大家了解。

大家主要掌握基本的數(shù)字、時間、字符串就足以應(yīng)對日常開發(fā)了。

2. Mybatis JdbcType官方文檔

Mybatis JdbcType官方文檔

MyBatis中的JdbcType映射使用詳解

查閱Mybatis JdbcType官方文檔是很有必要的!

3. 說明

對于自己不肯定的,調(diào)整代碼多嘗試下,能夠使自己加深印象!

4. 更新日志

2017-04-26 修改內(nèi)容:MySQL中沒有CLOB類型,謝謝@火靈 指正。

Mybatis JdbcType Oracle MySql JdbcType CLOB CLOB CLOB?>修改為TEXT

以上這篇MyBatis中的JdbcType映射使用詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標簽: JDBC
相關(guān)文章:
主站蜘蛛池模板: 国产午夜精品理论片久久影视 | 国产在线精品一区二区不卡 | 秋霞手机入口二日韩区 | 久久e| 免费毛片全部不收费的 | 久久国产精品视频一区 | 91精品久久久久久久久久 | 日韩字幕一中文在线综合 | 亚洲精品男人天堂 | 八戒午夜精品视频在线观看 | 久久99这里只有精品国产 | 女人张开腿让男人桶免费最新 | 男女男精品视频在线播放 | 99免费在线视频 | 日韩18在线观看地址 | 日韩在线观看一区二区三区 | 久久夜视频 | 欧美一级人与动毛片免费播放 | 国产日韩欧美在线观看播放 | 亚洲精品三区 | 午夜一级毛片免费视频 | 精品视频一区二区三三区四区 | 精品一区国产 | 国产视频二区 | 伊人波多野结衣 | 老司机亚洲精品影院 | 欧美日韩亚洲一区二区三区在线观看 | 久久91综合国产91久久精品 | 国产精品日韩欧美一区二区 | 人人99| 和老外3p爽粗大免费视频 | 国产精品久久久久999 | 国产精品99 | 中文字幕乱码无线码在线 | 免费一级做a爰片久久毛片 免费一级做a爰片性色毛片 | 欧美成人看片一区二区三区尤物 | 亚洲九九香蕉 | 嫩草一区二区三区四区乱码 | 免费一级毛片免费播放 | 久久久小视频 | 91影视永久福利免费观看 |