一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Mybatis使用@param注解四種情況解析

Mybatis使用@param注解四種情況解析

2020-09-01 00:37白熊啊 Java教程

這篇文章主要介紹了Mybatis使用@param注解四種情況解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

一、方法有多個參數

例如:

接口方法:

?
1
2
3
4
@Mapper
public interface UserMapper {
  Integer insert(@Param("username") String username, @Param("address") String address);
}

對應的xml:

?
1
2
3
<insert id="insert" parameterType="org.javaboy.helloboot.bean.User">
  insert into user (username,address) values (#{username},#{address});
</insert>

原因:當不使用 @Param 注解時,mybatis 是不認識哪個參數叫什么名字的,盡管在接口中定義了參數的名稱,mybatis仍然不認識。這時mybatis將會以接口中參數定義的順序和SQL語句中的表達式進行映射,這是默認的。

二、方法參數要取別名

例如

?
1
2
3
4
@Mapper
public interface UserMapper {
  Integer insert(@Param("username") String username, @Param("address") String address);
}

對應的xml:

?
1
2
3
<insert id="insert" parameterType="org.javaboy.helloboot.bean.User">
  insert into user (username,address) values (#{username},#{address});
</insert>

三、XML 中的 SQL 使用了 $ 拼接sql

$ 會有注入的問題,但是有的時候不得不使用 $ 符號,例如要傳入列名或者表名的時候,這個時候必須要添加 @Param 注解

例如:

?
1
2
3
4
@Mapper
public interface UserMapper {
  List<User> getAllUsers(@Param("order_by")String order_by);
}

對應xml:

?
1
2
3
4
5
6
<select id="getAllUsers" resultType="org.javaboy.helloboot.bean.User">
  select * from user
  <if test="order_by!=null and order_by!=''">
    order by ${order_by} desc
  </if>
</select>

四、動態 SQL 中使用了參數作為變量

如果在動態 SQL 中使用參數作為變量,那么也需要 @Param 注解,即使你只有一個參數。例如如下方法:

?
1
2
3
4
@Mapper
public interface UserMapper {
  List<User> getUserById(@Param("id")Integer id);
}

對應xml:

?
1
2
3
4
5
6
<select id="getUserById" resultType="org.javaboy.helloboot.bean.User">
  select * from user
  <if test="id!=null">
    where id=#{id}
  </if>
</select>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/bear7/p/13572495.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费午夜影院 | 热99re久久精品精品免费 | 欧美不卡一区二区三区免 | 91久久精品国产一区二区 | 大妹子最新视频在线观看 | 国产精品每日在线观看男人的天堂 | 亚洲haose在线观看 | 五月一区二区久久综合天堂 | 暖暖的免费观看高清视频韩国 | 国产一久久香蕉国产线看观看 | sxx免费看观看美女 sss亚洲国产欧美一区二区 | 福利视频一区青娱 | 国产一成人精品福利网站 | 四虎影院网址大全 | 超兴奋朋友的中文字幕下 | 精品国产一区二区三区在线观看 | 日韩欧美一区二区三区 | aaaa大片| 精品成人一区二区三区免费视频 | 欧美va在线播放免费观看 | a级特黄毛片免费观看 | 成人观看免费大片在线观看 | 欧美男同video | 午夜精品在线视频 | 亚洲天堂视频在线观看 | 欧美三级不卡在线观线看高清 | 小苹果日本在线观看 | 亚洲国产天堂久久精品网 | 欧美a级在线观看 | 国产大胆歌舞团网站 | 国产亚洲精品一区久久 | 日韩伦理在线看 | 亚洲国产精品牛在线 | 久久国内精品 | 国产精品毛片高清在线完整版 | 精品精品精品 | 高清视频在线观看+免费 | 极品丝袜乱系列在线阅读 | 亚洲欧美优优色在线影院 | 欧美添下面视频免费观看 | 欧美性色黄大片四虎影视 |