mybatis之parameterType传递多个参数】的更多相关文章

当在查询的时候需要传入多个参数的时候该怎么办呢: 1,封装成一个Model对象,底层HashMap还是一个 User user=new User(); user.setUserName("zhangsan"); user.setPassword("123456"); queryUserByuserNameAndPass(user);//为返回值类型为User <select id="queryUserByuserNameAndPass" r…
引言 目前,MyBatis的使用越来越普遍,也有一些公司使用Hibernate.使用MyBatis需要我们自己书写SQL语句,面对各种复杂的场景,SQL传递多参是很普遍的.如何传递多参应对不同的场景也是一种学问.下面总结了4种传递多参的方法. Method1. 顺序传参 1 public User selectUserMessage(String name, int deptId); 2 3 <select id="selectUserMessage" resultMap=&qu…
1.接口 public interface MemberMapper { public boolean insertMember(Members member); public Members selectMember(Integer id, String name); } 2.配置文件 不能这样写,通过查看mybatis源码后发现,单个参数mybatis不会做处理,多个参数会将传递过来的参数封装成一个map集合,key是从param1开始一直到paramN,而value是我们传递过来的值 以下…
一.单个参数: public List<XXBean> getXXBeanList(String xxCode); <select id="getXXXBeanList" parameterType="java.lang.String" resultType="XXBean"> select t.* from tableName t where t.id= #{id} </select> 其中方法名和ID一致,…
当在查询的时候需要传入多个参数的时候该怎么办呢: 1,封装成一个Model对象,底层HashMap还是一个 User user=new User(); user.setUserName("zhangsan"); user.setPassword("123456"); queryUserByuserNameAndPass(user);//为返回值类型为User <select id="queryUserByuserNameAndPass" r…
如果查询的条件有多个的时候,mybatis有三种传入方式: 1.通过注解传入 例如: public interface Mapper(){ public User login(@Param("username")String username,@Param("password") String password); } @Param注解:将对应形参的值在mapper.xml中传入参数时,指定传入参数的名称.指定在mapper.xml中形参的名字(也就是mapper.…
Dao层传递参数到mapping.xml文件的几种方式:(Mybatis传值总结) 第一种:传递单个参数 Dao层Code片段: /** * 根据articleId查询XXXX详情. * * @param articleId * @return {@link CmsProductArticle} */ public CmsProductArticle getCmsProductArticleByArticleId(Long articleId); Mapping片段: <select id=&quo…
映射器的主要元素: 本章介绍 select 元素中传递多个参数的处理方式. 测试类:com.yjw.demo.MulParametersTest 使用 Map 传递参数(不建议使用) 使用 MyBatis 提供的 Map 接口作为参数来实现. StudentDao /** * 使用 Map 传递参数 * * @param params * @return */ List<StudentDO> listByMap(Map<String, String> params); Studen…
顺序传参法 public User selectUser(String name, int deptId); <select id="selectUser" resultMap="UserResultMap"> select * from user where user_name = #{0} and dept_id = #{1} </select> #{}里面的数字代表你传入参数的顺序. 这种方法不建议使用,sql层表达不直观,且一旦顺序调…
Mybatis提供了4种传递多个参数的方法: 1 Map sql语句 接口 调用方法 这个方法虽然简单易用,但是存在一个弊端:Map存储的元素是键值对,可读性不好. 2 注解 使用MyBatis的参数注解@Param(org.apache.ibatis.annotations.Param). 接口 sql语句 #{roleName}代表rolename参数,可读性较好.如果参数过多,那么使用注解方式的可读性就会不好.   3 #{order} 代码与2类似,只不过接口里面没有@Param注解,#…