我是靠谱客的博主 爱撒娇小刺猬,最近开发中收集的这篇文章主要介绍Mybatis参数传递1、顺序传参法2、@Param注解传参法3、Map传参法4、Java Bean传递参数方法5、传入一个数组6、多个无规则参数传递,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Mybatis参数传递

  • 1、顺序传参法
  • 2、@Param注解传参法
  • 3、Map传参法
  • 4、Java Bean传递参数方法
  • 5、传入一个数组
  • 6、多个无规则参数传递

1、顺序传参法

顺序传参方法是根据参数的顺序来赋值,这种方式不太容易观察,且顺序容易搞乱,不推荐使用。示例如下所示:

public User selectEmp(String id, String user_name);

<select id="selectEmp" resultMap="cool.ale.pojo.Emp">
    select * from emp
    	where id = #{0} and user_name = #{1}
</select>

2、@Param注解传参法

这里可以用 @Param 注解来指定一个名称,参数在不多的情况下还是比较直观的。示例如下所示:

public User selectEmp(@Param("id") String id, String @Param("user_name") user_name);

<select id="selectEmp" resultMap="cool.ale.pojo.Emp">
    select * from emp
    	where id = #{id} and user_name = #{user_name}
</select>

3、Map传参法

这种方式适合传递多个参数,且比较灵活。

public User selectEmp(Map<String, Object> params);

<select id="selectEmp" parameterType="java.util.Map" resultMap="cool.ale.pojo.Emp">
    select * from emp
    	where id = #{id} and user_name = #{user_name}
</select>

4、Java Bean传递参数方法

这里直接用属性名取值即可

public User selectEmp(Map<String, Object> params);

<select id="selectEmp" parameterType="java.util.Map" resultMap="cool.ale.pojo.Emp">
    select * from emp
    	where id = #{id} and user_name = #{user_name}
</select>

5、传入一个数组

示例代码如下:

List<Emp> selectEmp(List<Integer> list);

<select id="selectEmp" resultType="cool.ale.pojo.Emp">
   select id,name from emp where id = #{list[0]} or id = #{list[1]}
</select>

6、多个无规则参数传递

多个无规则的参数传递,mybatis会自己封装成下面的样子

map1

{
    "arg0": "value1",
    "arg1": "value2"
}

map2

{
    "param1": "value1",
    "param2": "value2"
}

所以我们取值的话可以用arg0、arg1或者param1、param2参数名称取值

最后

以上就是爱撒娇小刺猬为你收集整理的Mybatis参数传递1、顺序传参法2、@Param注解传参法3、Map传参法4、Java Bean传递参数方法5、传入一个数组6、多个无规则参数传递的全部内容,希望文章能够帮你解决Mybatis参数传递1、顺序传参法2、@Param注解传参法3、Map传参法4、Java Bean传递参数方法5、传入一个数组6、多个无规则参数传递所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部