Loading

第四章 MyBatis动态SQL标签

一、动态SQL标签

背景

在企业级项目中,经常会遇到多条件筛选查询,这样需要写多条SQL语句去匹配对应条件下的查询,增加开发难度和维护成本,尤其在JDBC中,SQL语句是插入到Java环境中,这样会增大开发成本

定义

使用标签化的语言,根据环境变化,产生出适应当前条件下的SQL语句,SQL语句是变化的

作用
  1. 大大简化了开发难度和维护成本
  2. 进一步优化了JDBC持久化数据库的代码
主要标签
  • < if >条件标签
    主要属性:test属性:验证当前条件是否成立,如果为true,显示标签中内容,如果为false则隐藏
  • < where>筛选标签
    主要作用:
    1. 替代where 1=1
    2. 如果发现where后面直接跟and或者or的话,会直接剔除and或者or
  • < foreach>循环标签
    重要属性:
    1. collection:当前需要循环变量的集合,踏实java中数据类型
    2. item:是一个变量类型,同来存储当前循环对象或者数据
    3. open:开始
    4. closr:结束
    5. separator:分隔符
    6. index:索引、下标、位置
      注意:接口方法中的参数名需要跟xml中collection中名称对应起来,默认是不会对应,需要在声明接口方法时在行驶参数前加入一个注释@Param("变量名")
      注解:就是一个特殊的Java代码,代表一段功能
  • < choose>多重条件标签
posted @ 2021-05-19 09:46  Ryosetsu  阅读(175)  评论(0)    收藏  举报