@Param在Mybatis中的使用

自己的一些总结,方便自己以后查找,有不对的地方请指出来,一起提高。

1.如果mapper接口里参数是两个普通参数;如下图

[java]  view plain  copy
  1. public List<student> selectuser(int pn ,String i);  

[html]  view plain  copy
  1. <select id="selectuser"  resultType="com.user.entity.student">  
  2.         SELECT * FROM student  
  3.          where sname like concat(concat("%",#{1}),"%")  
  4.          LIMIT #{0} ,5      
  5. </select>  

那么xml里只能用#{0},#{1}的方式,但这样的表达方法,不利于后期的维护。        可以用@Param的注解来修饰参数。xml里看起来也比较方便,否则一堆0,1,2,3的真是难懂。

[java]  view plain  copy
  1. public List<student> selectuser(@Param(value = "page")int pn ,@Param(value = "str")String i);  

[html]  view plain  copy
  1. <select id="selectuser"  resultType="com.user.entity.student">  
  2.     SELECT * FROM student  
  3.     where sname like concat(concat("%",#{str}),"%")  
  4.     LIMIT #{page} ,5  
  5. </select>  

2,如果传入的参数是基本类型参数和实体类对象。

[java]  view plain  copy
  1. public List<student> selectuser(@Param(value = "page")int pn ,@Param(value = "st")student student);  

[html]  view plain  copy
  1. <select id="selectuser"  resultType="com.user.entity.student">  
  2.     SELECT * FROM student  
  3.     where sname like concat(concat("%",#{st.sname}),"%")  
  4.     LIMIT #{page} ,5  
  5. </select>  

3.如果传入的参数只有一个,基本上不用@Param这个注解了。正常用

[java]  view plain  copy
  1. public List<student> selectuser(int pn);  

[html]  view plain  copy
  1. <select id="selectuser"  resultType="com.user.entity.student">  
  2.         SELECT * FROM student  
  3.         <!--where sname like concat(concat("%",#{st.sname}),"%")-->  
  4.         LIMIT #{page} ,5  
  5.     </select>  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值