SpringBoot整合Mybatis之动态SQL

一、概念

Mybatis框架的动态SQL技术是一种根据特定条件动态拼装SQL语句的功能。它存在的意义是为了解决拼接SQL语句字符串时的痛点问题。

二、if 标签

if标签可通过test属性的表达式进行判断,若表达式的结果为true,则标签中的内容会执行,繁殖标签中的内容不会执行。


三、choose标签

choose标签作用条件判断来拼接指定的条件,它和if不太相同,choose似类于java中的switch语句用法,直要有条件成立,其它判断将得不到执行,如果所有条件都不成立则执行otherwise标签中的内容。
格式:

  
    执行的代码;
  


    执行的代码;
  

  ......
  
      执行的代码;
  
  

四、foreach标签

1. 常用属性

collection:设置需要循环的数组或集合

item:表示数组或集合中的每一个数据

separator:循环体之间的分隔符

open:foreach标签所循环的所有内容的开始符

close:foreach标签所循环的所有内容的结束符

2. 批量删除方式一


    
        delete from dish where id in
        
            #{id}
        
    

3. 批量删除方式二


    
        delete from dish where (
        
            id = #{id}
        
        )
    

4. 批量新增


        insert into dish(name,category_id,price,code,image,description,sort) values
        
            (#{dish.name},#{dish.categoryId},#{dish.price},#{dish.code},#{dish.image},#{dish.description},#{dish.sort})
        
    

你可能感兴趣的:(springboot,mybatis-plus,mybatis,spring,boot,sql)