91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • mybatis配置文件resultType和resultMap的區別以及mybatis自帶的別名

mybatis配置文件resultType和resultMap的區別以及mybatis自帶的別名

發布時間:2020-08-02 07:38:19 來源:網絡 閱讀:7073 作者:liuzhiyong0524 欄目:開發技術

returnType是自定義的類或者jdk自帶的類

resultMap是在mapperXMl文件中通過resultMap節點定義出來的

例如:

<resultMap id="BaseResultMap" type="com.sinosoft.reins.POJO.model.PrpMaxNo" >
    <id column="GROUPNO" property="groupno" jdbcType="VARCHAR" />
    <id column="TABLENAME" property="tablename" jdbcType="VARCHAR" />
    <id column="MAXNO" property="maxno" jdbcType="VARCHAR" />
    <result column="FLAG" property="flag" jdbcType="VARCHAR" />
</resultMap>

1)于是我們就可以在后面的查詢節點中使用這個map的id啦

例如:

<select id="genMaxMinNo" resultMap="BaseResultMap">
  select GROUPNO,TABLENAME,MAXNO,FLAG from TEST where id=#{id}
</select>

2)當然我們也可以在沒有定義resultMap的情況下,直接(保證結果列的key和model的properties一致就可以)

<select id="genMaxMinNo" resultType="com.sinosoft.reins.POJO.model.PrpMaxNo">
  select GROUPNO,TABLENAME,MAXNO,FLAG from TEST where id=#{id}
</select>

3)當然沒定義resultMap的情況下,也可以使用mybatis的默認機制返回一個map出來

<select id="genMaxMinNo" resultType="map">
  select GROUPNO,TABLENAME,MAXNO,FLAG from TEST where id=#{id}
</select>

在使用的時候,可以將返回值強轉成HashMap,key默認key是大寫的可以通過起別名使得key變成小寫(別名加不加引號,as用不用必須寫,自己去測驗吧)

<select id="genMaxMinNo" resultType="map">
  select GROUPNO as "groupNo",TABLENAME as "tableName",MAXNO as "maxNo",FLAG as "flag" from TEST where id=#{id}
</select>

以上就是我們常用的三種方式!!!!

——————————————————————————————————————————

mabatis配置文件偷懶的幾個點:

如果參數只有一個且是簡單類型可以不寫prameterType

如果返回值是簡單類型resultType或者resultMap可以不寫

————————————————————————————————————————

我們之所以能在mapperxml中使用簡寫int,string等等是因為mybatis默認在

org.apache.ibatis.type.TypeAliasRegistry 中為我們定義了類的別名:

    

    registerAlias("string", String.class);
    registerAlias("byte", Byte.class);
    registerAlias("long", Long.class);
    registerAlias("short", Short.class);
    registerAlias("int", Integer.class);
    registerAlias("integer", Integer.class);
    registerAlias("double", Double.class);
    registerAlias("float", Float.class);
    registerAlias("boolean", Boolean.class);
    registerAlias("byte[]", Byte[].class);
    registerAlias("long[]", Long[].class);
    registerAlias("short[]", Short[].class);
    registerAlias("int[]", Integer[].class);
    registerAlias("integer[]", Integer[].class);
    registerAlias("double[]", Double[].class);
    registerAlias("float[]", Float[].class);
    registerAlias("boolean[]", Boolean[].class);
    registerAlias("_byte", byte.class);
    registerAlias("_long", long.class);
    registerAlias("_short", short.class);
    registerAlias("_int", int.class);
    registerAlias("_integer", int.class);
    registerAlias("_double", double.class);
    registerAlias("_float", float.class);
    registerAlias("_boolean", boolean.class);
    registerAlias("_byte[]", byte[].class);
    registerAlias("_long[]", long[].class);
    registerAlias("_short[]", short[].class);
    registerAlias("_int[]", int[].class);
    registerAlias("_integer[]", int[].class);
    registerAlias("_double[]", double[].class);
    registerAlias("_float[]", float[].class);
    registerAlias("_boolean[]", boolean[].class);
    registerAlias("date", Date.class);
    registerAlias("decimal", BigDecimal.class);
    registerAlias("bigdecimal", BigDecimal.class);
    registerAlias("biginteger", BigInteger.class);
    registerAlias("object", Object.class);
    registerAlias("date[]", Date[].class);
    registerAlias("decimal[]", BigDecimal[].class);
    registerAlias("bigdecimal[]", BigDecimal[].class);
    registerAlias("biginteger[]", BigInteger[].class);
    registerAlias("object[]", Object[].class);
    registerAlias("map", Map.class);
    registerAlias("hashmap", HashMap.class);
    registerAlias("list", List.class);
    registerAlias("arraylist", ArrayList.class);
    registerAlias("collection", Collection.class);
    registerAlias("iterator", Iterator.class);
    registerAlias("ResultSet", ResultSet.class);


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

定兴县| 攀枝花市| 信丰县| 武安市| 炎陵县| 三明市| 偏关县| 房产| 常德市| 鄢陵县| 锦州市| 清河县| 临沂市| 西平县| 紫云| 娄底市| 北海市| 宁河县| 宜宾市| 柯坪县| 任丘市| 河东区| 井研县| 龙江县| 涡阳县| 喀喇| 盐源县| 磴口县| 丽江市| 清水河县| 合江县| 临夏市| 金坛市| 广东省| 阿拉善盟| 若尔盖县| 四子王旗| 墨玉县| 壶关县| 桐庐县| 泰来县|