华山论剑

把常用的东西记下来

mybatis3中@SelectProvider传递参数

一、通常情况下我喜欢使用实体或者vo去传参数,这样在Provide的方法中可以直接通过#{param}(param为你爹实体中的字段)来获取你要的参数。

二、使用map传参数

在超过一个参数的情况下,@SelectProvide方法必须接受Map<String, Object>做为参数,

如果参数使用了@Param注解,那么参数在Map中以@Param的值为key,如下例中的userId;
如果参数没有使用@Param注解,那么参数在Map中以参数的顺序为key,如下例中的password:
UserMapper.java:

1     @SelectProvider(type = SqlProvider.class, method = "selectUserCheck")

2     @ResultMap("userMap")

3     public User getUserCheck(@Param("userId") long userId, String password);


SqlProvider.java:

1     public String selectUserCheck(Map<String, Object> para) {
2         return "select * from user where userId=" + para.get("userId") + " and password='" + para.get("1") + "'";
3     }

阅读更多
个人分类: mybatis
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

mybatis3中@SelectProvider传递参数

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭