Mybatis————核心配置文件标签和动态常用的SQL标签
创始人
2025-05-31 17:06:30

核心配置文件:

properties标签

properties标签可以通过resource属性指定外部properties文件

写一个外部文件 一个key值对应一个values值

 通过resource属性指定外部properties文件,读取配置文件

setting标签

使用log4j打印日志信息

打印的日志信息

 typeAliases标签

加载指定包中所有的类,给类默认起别名为类的名字但首字母小写

 

environments标签

在 environments标签中,可以配置Mybatis的多套运行环境,将SQL映射到多个不同的数据库上

 environment是environments的子标签,用来配置myBaties的一套运行环境,需指定运行环境的id,事务管理,数据源配置等相关信息。

可以通过配置多个environment标签来连接多个数据库,需要注意的是必须指定其中一个为默认运行环境(通过default指定)

dataSource标签

用于配置数据库的连接属性,例如要连接的数据库的驱动程序名称 ,url,用户名和密码,数据库默认的type设置为pooled,表示使用连接池

 mybatis的动态sql语句

mybatis的动态SQL包括以下几种元素

元素作用备注
if判断语句单条件分支判断
choose(when、otherwise)相当于Java中的switch case语句多条件分支判断
trim、where辅助元素用于处理一些SQL拼接问题
foreach循环语句在in语句等列举条件常用
set辅助元素更新判断

if标签

if类似于Java中的if语句,是Mybatis中最常用的判断语句

if语句常常与test属性联合使用。语法如下:

     SQL语句

当判断条件为true时才会执行所包含的SQL语句,最常见的if语句中包含where子句,例如:

使用动态前需要根据不同的情况大量手动拼接SQL语句

 动态SQL更能体现Mybatis的灵活性,高度可配置和可维护性

 set标签:

与where有相似,其后如果存在条件,则拼接set。标签会动态地在行首插入SET关键字,并且自动帮我们去掉多余的逗号,适用于update,示例:

foreach标签:


对于一些SQL语句中含有in 条件,需要迭代条件集合来生成的情况,可以使用foreach 来实现 SQL条件的迭代 

foreach标签用于循环语句,它很好的支持了数据和List set 接口的集合,并对此提供遍历的功能。语法格式如下:

  •  item:表示集合中每一个元素进行选代时的别名。
  • index:指定一个名字,表示在迭代过程中每次迭代到的位置
  • open:表示该语句以什么开始(    既然是in条件语句,所以必然以 ( 开始   )。
  • close:表示该语句以什么结束(    既然是in条件语句,所以必然以 ) 开始  )。
  • separator:表示在每次进行迭代之间以什么符号作为分隔符(既然是n 条件语句,所以必然以 ,作为分隔符)

用法:根据id进行批量删除

 

 

 要删除的id:

public void testdelBeach(){List ids=new ArrayList<>();ids.add(1);ids.add(2);ids.add(5);ids.add(7);DelVO delVO=new DelVO();delVO.setIds(ids);userDao.delBatch(delVO);}

相关内容

热门资讯

长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...