加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

@Param注解的用法解析

发布时间:2020-12-16 23:40:31 所属栏目:百科 来源:网络整理
导读:实例一?@Param注解单一属性 dao层示例 Public?User?selectUser( @param (“userName”) String name, (“userpassword”) String?password); xml映射对应示例 select ? id = "?selectUser" ? resultMap = "BaseResultMap" ?? ???select??*??from?user_user_t

实例一?@Param注解单一属性

dao层示例

Public?User?selectUser(@param(“userName”) String name,(“userpassword”) String?password);

xml映射对应示例

  1. <select?id="?selectUser"?resultMap="BaseResultMap">??
  2. ???select??*??from?user_user_t???where?user_name?=?#{userName,jdbcType=VARCHAR}?and?user_password=#{userPassword,jdbcType=VARCHAR}??
  3. </select>

注意:采用#{}的方式把@Param注解括号内的参数进行引用(括号内参数对应的是形参如 userName对应的是name);

实例二?@Param注解JavaBean对象

dao层示例

public?List<user>?getUserInformation(@Param("user")?User user);

xml映射对应示例

getUserInformation"?parameterType="com.github.demo.vo.User"?resultMap="userMapper" ????????select???

  • ????????include?refid="User_Base_Column_List"?/>??
  • ????????from?mo_user?t?where?1=1??
  • ??????????????????????<!--?因为传进来的是对象所以这样写是取不到值得?-->??
  • ????????????if?test="user.userName!=null??and?userName!=‘‘">???and???t.user_name?=?#{Name}??if>??
  • ?????????????=?#{ge}?? ????>??

  • 以下内容为摘录内容:源于?冲吧,不要停!?如有侵权,请通知作者,及时删除~~~

    1,使用@Param注解

    当以下面的方式进行写SQL语句时:

    ??? @Select("select column from table where userid = #{userid} ")
    ?? ?public int selectColumn(int userid);

    当你使用了使用@Param注解来声明参数时,如果使用 #{} 或 ${} 的方式都可以。

    ??? @Select("select column from table where userid = ${userid} ")
    ?? ?public int selectColumn(@Param("userid") int userid);

    当你不使用@Param注解来声明参数时,必须使用使用 #{}方式。如果使用 ${} 的方式,会报错。


    2,不使用@Param注解

    不使用@Param注解时,参数只能有一个,并且是Javabean。在SQL语句里可以引用JavaBean的属性,而且只能引用JavaBean的属性。

    ??? // 这里id是user的属性

    ??? @Select("SELECT * from Table where id = ${id}") ?? ?Enchashment selectUserById(User user);

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读