您现在的位置是:首页 > 编程 > 

Mybatis基础使用(xml篇)

2025-07-27 19:34:20
Mybatis基础使用(xml篇) 一、方法中多参传入在接口方法的参数前加 @Param属性(否则xml中参数系统无法识别匹配)多个参数mybatis会做特殊处理,将多个参数封装成一个map,#{}就是从map中获取指定的key值代码语言:javascript代码运行次数:0运行复制//通过密码和名字查询用户 User selectUserByPwd(@Param("username&q

Mybatis基础使用(xml篇)

一、方法中多参传入

  • 在接口方法的参数前加 @Param属性(否则xml中参数系统无法识别匹配)
  • 多个参数mybatis会做特殊处理,将多个参数封装成一个map,#{}就是从map中获取指定的key值
代码语言:javascript代码运行次数:0运行复制
//通过密码和名字查询用户
User selectUserByPwd(@Param("username") String username,@Param("pwd") String pwd);
代码语言:javascript代码运行次数:0运行复制
<select id="selectUserByPwd" resultType="com.User">
  select * from user where name = #{username} and pwd = #{pwd}
</select>
  • 在接口方法中,参数直接传递Map;(系统则把key作为xml中参数标准)
代码语言:javascript代码运行次数:0运行复制
    List<User> getUserByIdAndame(Map<String,Object> map);
代码语言:javascript代码运行次数:0运行复制
    <select id="getUserByIdAndame" resultType="com.User" >
        select * from user where id = #{id} and name = #{name}
    </select>
代码语言:javascript代码运行次数:0运行复制
	 Map<String, Object> map = new HashMap<>();
	 map.put("id",1);
	 map.put("name","zhangsan");
	 List<User> userByIdAndame = userDao.getUserByIdAndame(map);

二、resultMap自定义结果集

1)属性值介绍
在这里插入图片描述
2)级联属性,一对一
在这里插入图片描述
)一对一
在这里插入图片描述
4)一对多,嵌套结果集
在这里插入图片描述
5)分步查询
在这里插入图片描述
6)if判断标签,可以去掉前面多余的and 或者 也可以使用 1=1
在这里插入图片描述
7)trim字符串截取
在这里插入图片描述
8)foreach循环
在这里插入图片描述
9)choose 选择标签
在这里插入图片描述
10)update set值 去除最后多余逗号
在这里插入图片描述
在这里插入图片描述
11)MySql 批量插入

方式一:

在这里插入图片描述

方式二:

在这里插入图片描述
11)Oracl 批量插入

方式一:

在这里插入图片描述

方式二:

在这里插入图片描述
12)sql标签-抽取重用sql片段
在这里插入图片描述

三、#{}和${}区别

  1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。
  2. $将传入的数据直接显示生成在sql中。则传入or 1 = 1,则会造成sql注入。
  3. mybatis 排序order by 动态参数时,使用$.

四、模糊查询

1. sql中字符串拼接 select * from user where name like concat(‘%’,#{name},‘%’); mysql支持两头拼接 select * from user where name like concat(concat(‘%’,#{name}),‘%’);oracle只能一边拼接 2. 使用{} select * from user where name like ‘% {name}%’ .程序中拼接 select * from user where name like #{name}; name = “%” + name + “%”; 4.匹配 select * from user where name ‘%’ || #{name} || ‘%’;

五、日志sql

mybatis-config.xml 核心配置文件中添加。

代码语言:javascript代码运行次数:0运行复制
<settings>
        <setting name="logImpl" value="STDOUT_LOGGIG"/>
</settings>

集成springboot yml配置文件

代码语言:javascript代码运行次数:0运行复制
mybatis:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-04-09,如有侵权请联系 cloudcommunity@tencent 删除字符串xmlmybatis基础数据

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1163050.html

相关标签:无
上传时间: 2025-07-20 21:08:23
留言与评论(共有 6 条评论)
本站网友 二手房买房流程
24分钟前 发表
#{name})
本站网友 戚优华
18分钟前 发表
Object> map);代码语言:javascript代码运行次数:0运行复制 <select id="getUserByIdAndame" resultType="com.User" > select * from user where id = #{id} and name = #{name} </select>代码语言:javascript代码运行次数:0运行复制 Map<String
本站网友 株洲房产
11分钟前 发表
org.apache.ibatis.logging.stdout.StdOutImpl本文参与 腾讯云自媒体同步曝光计划
本站网友 水墨的音色
3分钟前 发表
Object> map = new HashMap<>(); map.put("id"
本站网友 张爽
14分钟前 发表
模糊查询1. sql中字符串拼接 select * from user where name like concat(‘%’