Mybatis中传参数的方法

1.使用注解绑定,mapper.xml 对应方法 不需要指定 parameterType,(推荐使用注解绑定方式)

方法接口:

List selectByExample(@Param("example") CalculateIdeacommissionsum example,@Param("roleNameList") List roleNameList);

方法对应的Mapper.xml

select

id, calculateYear, calculateMonth, userId, userCode, userName, userStatus, companyName,

companyId, curDeptId, curDeptName, roleName from Calculate_IdeaCommissionSum

where calculateYear=#{example.calculateYear,jdbcType=SMALLINT}

and calculateMonth=#{example.calculateMonth,jdbcType=SMALLINT}

and deleteFlag=#{example.deleteFlag,jdbcType=TINYINT}

#{rolename,jdbcType=VARCHAR}

order by userStatus

2.如果接口参数没有使用注解绑定,mapper.xml 对应方法 需要指定对应的参数类型。

List selectByExample(CalculateIdeacommissionsum example);

方法对应的Mapper.xml

select

id, calculateYear, calculateMonth, userId, userCode, userName, userStatus, companyName,

companyId, curDeptId, curDeptName, roleName from Calculate_IdeaCommissionSum

where calculateYear=#{calculateYear,jdbcType=SMALLINT}

and calculateMonth=#{calculateMonth,jdbcType=SMALLINT}

order by userStatus

3. parameterType 也可以使用Map存放参数进行查询

接口方法:

List selectByParam(Map map);

接口方法对应的Mapper.xml 文件方法:

select * from Base_EmpInfo

where deleteFlag=0

and userName=#{userName,jdbcType=VARCHAR}

4.mybatis 遍历循环

collection标识我们程序传值过来的集合

open表示我们遍历的集合以什么字符开始

close表示我们遍历的集合以什么字符结尾

item是给我们集合遍历取一个变量

separator 表示的是分隔符,将我们集合中遍历出来的数据用","分隔开。

#{rolename,jdbcType=VARCHAR}

sql如下:

select * from Calculate_IdeaCommissionSum where calculateYear=2019 and calculateMonth=2 and roleName  in ('副总经理','总监','经纪人');

将roleName的多个条件用关系转化为 roleName in (roleName1,roleName2,roleName3...)  in中用foreach循环

for循环执行 mybatis_Mybatis中使用循环遍历相关推荐

  1. scala中循环守卫_Scala中的循环

    scala中循环守卫 Scala中的循环 (Loops in Scala) In programming, many times a condition comes when we need to e ...

  2. python测试框架untest怎么循环执行_unittest如何在循环遍历一条用例时生成多个测试结果...

    引用自:http://blog.csdn.net/kaku21/article/details/42124593 参考网址:http://programmaticallyspeaking.com/te ...

  3. python中for循环流程图_Python中的迭代遍历 for in

    遍历就是从头到尾依次从列表中获取数据,在循环体内部针对每一个元素,执行相同的操作. 在Python中为了提高列表的遍历效率,专门提供的迭代(iteration)遍历. 使用 for...in 就能够在 ...

  4. 改变循环执行的状态,循环程序举例

    //  改变循环执行的状态 1.  用 break 语句提前终止循环 #include "stdafx.h" #define SUM 100000                  ...

  5. java 线程 while循环_java多线程中while循环的问题

    public class Test{ public static void main(String[] args) { try { MyThread th = new MyThread(); th.s ...

  6. java中的循环结构_Java中的循环结构进阶

    循环结构进阶 学习本章用到的单词 triangle:三角形 circle:圆形 diamond:钻石 password:密码 row:行.排列 二重循环结构 简单的说:二重循环就是一个循环体内又包含另 ...

  7. c++循环执行一个函数_循环

    循环 目标 程序的三大流程 while 循环基本使用 break 和 continue while 循环嵌套 01. 程序的三大流程 在程序开发中,一共有三种流程方式: 顺序 -- 从上向下,顺序执行 ...

  8. python中循环结构_python中的循环结构等相关知识

    分支结构 1.单分支:一般用于只会发生一种情况的场景,if #90以上优秀 score=95 if score>90: print("优秀") 2.双分支:一般用于会发生两种 ...

  9. java for循环 写法_java中for循环的6种写法

    packageForLoop;importjava.util.ArrayList;importjava.util.Iterator;importjava.util.List;/*** java中for ...

最新文章

  1. 笛卡尔积 php,PHP自定义函数生成笛卡尔积
  2. 斗鱼关注人数爬取 | 字体反爬的攻与防
  3. 赢在CSDN——如何在CSDN赚到一桶金
  4. VQEG(视频质量专家组)
  5. 光纤收发器的7大挑选技巧
  6. 送书 | 主成分分析PCA
  7. BZOJ 1922: [Sdoi2010]大陆争霸
  8. linux 环境变量详解,Linux 环境变量详解及实例
  9. repo同步代码_一次协作多端同步,打通看云、github互相同步(serverless实践)
  10. 吴恩达深度学习——序列模型与注意力机制
  11. godot读写本地文件
  12. 深度学习 - 生成对抗网络
  13. Windows7开机加速全攻略五:系统服务优化
  14. react梳理之redux
  15. 一级计算机电子表格人,计算机一级电子表格.doc
  16. 3 a 5的c语言表达式,C语言中,赋值表达式:(a=3*5)=4*3,为什么整个表达式的值为1,表达式x=(a=3,6*a)和表达式x=a=3,6*a分别是...
  17. PBS任务只排队,不运行
  18. 数字档案管理系统解决方案 - 数字化档案建设方案
  19. Vue项目中Echarts流向图迁徙图实现
  20. 177本名著浓缩成了177句话

热门文章

  1. oracle保存type类型,oracle type类型
  2. 日期格式化时注解@DateTimeFormat无效的问题分析
  3. Springboot中@ComponentScan 注解
  4. Spring 异常处理三种方式
  5. Tomcat(二):server.xml配置
  6. Java分布式篇5——FastDFS
  7. java请编写公共类继承抽象类_(Java相关)怎么理解抽象类,继承和接口?
  8. oracle数据库有几个服务_oracle数据库可以有几个数据库
  9. java摘要_java 摘要
  10. php 系统环境变量引用,PHP 系统变量 环境变量