Mybatis小记

目录

Mybatis第一个程序

xml文件

测试类

错误排查


Mybatis第一个程序

1.搭建实验数据库

2.导入MyBatis相关jar包

3.编写MyBatis核心配置文件

4.编写MyBatis工具类

5.创建实体类、

6.编写Mapper接口类

7.编写Mapper.xml配置文件

8.编写测试类

对象传参只引用需要的属性就可以,其余属性也不需要引用;但是#{}必须是属性名对应,没有map灵活Map传递参数,直接在sql中取出key即可【parameterType="map"】
对象传递参数,直接在sql中取出对象的属性即可【parameterType="Object"】
只有一个基本类型参数的情况下,可以直接在sql中取到多个参数用map或注解

xml文件

java 复制代码
<!--Map  传递map的key-->
    <insert id="addUser2" parameterType="map">
        insert into test1.user(id,name,pwd)values(#{userId},#{userName},#{password});
    </insert>

测试类

java 复制代码
@Test
public void addUser2(){
    SqlSession session=MybatisUtils.getSession();
    UserMapper mapper=session.getMapper(UserMapper.class);
    Map<String,Object>map=new HashMap<String,Object>();
    map.put("userId",5);
    map.put("userName","hello");
    map.put("password","123456");
    mapper.addUser2(map);
    session.commit();
    session.close();
}

错误排查

  • 配置文件没有注册
  • 绑定接口错误
  • 方法名不对
  • 返回类型不对
  • Maven导出资源问题
相关推荐
ps酷教程16 分钟前
Jackson 解决没有无参构造函数的反序列化问题
java
NiceCloud喜云21 分钟前
Opus 4.8 的 Effort Control 怎么选:Low 到 Max 五档策略
android·java·大数据·前端·c++·python·spring
AI玫瑰助手1 小时前
Python函数:默认参数的定义与注意事项
开发语言·python·信息可视化
油炸自行车1 小时前
Claude Code 错误:API Error: 400 Failed to deserialize the JSON body into the
开发语言·javascript·json·trae·claude code·api error 400
肩上风骋1 小时前
C++14特性
开发语言·c++·c++14特性
_日拱一卒1 小时前
LeetCode:994腐烂的橘子
java·数据结构·算法·leetcode·深度优先
隔窗听雨眠1 小时前
Nginx网关响应慢排查手记
java·服务器·nginx
智慧物业老杨2 小时前
智慧物业合同周期管理系统:从风险预警到智能交接的全流程数智化落地方案
java·人工智能·python
源码宝2 小时前
MES系统源码:Java8 + SpringBoot2.7 + MySQL8 + Redis,后端源码清爽易扩展
java·后端·源码·springboot·mes系统·源码二开·mes源码
JAVA社区3 小时前
Java高级全套教程(十)—— SpringCloudAlibaba超详细实战详解
java·开发语言·spring cloud·面试·职场和发展