当前位置: 首页 > news >正文

MyBatis 学习笔记:Maven 项目搭建与基础 CRUD

Maven + MyBatis 入门实战:完整实现 Emp 表增删改查(CRUD)
在 MyBatis 学习初期,最基础也最核心的就是实现对数据库表的增删改查(CRUD)操作。本文将基于 Maven 项目搭建,一步步完成 Emp 表的完整 CRUD 功能,全程附详细步骤和代码实现,适合 MyBatis 新手入门参考。
一、前期准备
1. 搭建 Maven 项目结构
首先创建一个标准的 Maven 项目,项目目录结构如下(保证资源文件和 Java 代码目录规范,MyBatis 能正确扫描到配置文件和 Mapper):
image
image

2. 配置 pom.xml 引入核心依赖
本次项目需要引入 junit(单元测试)、mybatis(核心框架)、mysql(数据库驱动)、lombok(简化实体类编写) 四大依赖,确保项目能正常运行:
image

二、核心代码编写
1. 编写数据库实体类(domain/Emp.java)
对应数据库中的 Emp 表,使用 Lombok 的 @Data、@NoArgsConstructor、@AllArgsConstructor 注解,可自动生成 getter/setter 方法、无参构造器、全参构造器,简化代码编写,无需手动编写冗余方法:
image

2. 编写 MyBatis 工具类(util/MyBatisTool.java)
封装 MyBatis 的 SqlSession 创建和关闭逻辑,避免重复代码,提高代码复用性。工具类提供静态方法,可快速获取 SqlSession 对象,同时保证资源正常关闭:
image

3.接下来开始从前往后写程序,编写EmpTest测试文件
先创建mapper层对象
image

3.1添加功能
EmpTest文件编写:
写了一个添加的测试方法,首先先创建了一条数据,用创建的mapper对象调用save方法,使用alt+enter生成mapper接口的方法,接着alt+enter,实现impl实现类的方法和mpper.xml的sql语句
image

EmpMapper文件编写:
image

EmpMapperImpl文件编写:
通过调用工具类方法,获得sqlSession对象,使用sqlSession对象的insert方法,调用mapper.xml文件的sql,关闭sqlSession连接,把结果返回给前端,这个数据将回到Test方法里成为定义的布尔变量i,判断是否添加数据成功
image

EmpMapper.xml文件编写:
image

编写以上文件之后,回到测试文件,运行测试方法
image

3.2修改功能
EmpTest文件编写:
修改测试方法,创建了一条数据,mapper对象调用update方法,使用alt+enter生成mapper接口的方法,接着alt+enter,实现impl实现类的方法和mpper.xml的sql语句
image

EmpMapper文件编写:
image

EmpMapperImpl文件编写:
通过调用工具类方法,获得sqlSession对象,使用sqlSession对象的update方法,调用mapper.xml文件的sql
image

EmpMapper.xml文件编写:
image

编写以上文件之后,回到测试文件,运行测试方法
image

3.3删除功能
EmpTest文件编写:
image

EmpMapper文件编写:
image

EmpMapperImpl文件编写:
通过调用工具类方法,获得sqlSession对象,使用sqlSession对象的delete方法,调用mapper.xml文件的sql
image

EmpMapper.xml文件编写:
image

编写以上文件之后,回到测试文件,运行测试方法
image

3.4查询全部数据功能
EmpTest文件编写:
image

EmpMapper文件编写:
image

EmpMapperImpl文件编写:
通过调用工具类方法,获得sqlSession对象,使用sqlSession对象的selectAll方法,调用mapper.xml文件的sql
image

EmpMapper.xml文件编写:
image

编写以上文件之后,回到测试文件,运行测试方法
image

3.5根据id查询数据功能
EmpTest文件编写:
image

EmpMapper文件编写:
image

EmpMapperImpl文件编写:
通过调用工具类方法,获得sqlSession对象,使用sqlSession对象的selectById方法,调用mapper.xml文件的sql
image

EmpMapper.xml文件编写:
image

编写以上文件之后,回到测试文件,运行测试方法
image

三、总结与注意事项
1. 核心总结
Maven 项目的核心是 pom.xml,正确引入依赖是项目运行的基础
MyBatis 的核心是「接口 + XML 映射」,namespace 和 id 必须与接口全类名、方法名对应
工具类封装 SqlSession 可提高代码复用性,避免冗余操作
Lombok 注解能大幅简化实体类编写,提高开发效率
2. 新手避坑点
确保 mybatis-config.xml 中的数据库连接信息正确(用户名、密码、数据库名)
Mapper XML 文件的 parameterType(入参类型)和 resultType(返回值类型)必须填写全类名,或在核心配置中配置别名
SqlSession 使用完毕后必须关闭,避免资源泄露
增删改操作需要事务提交

http://www.jsqmd.com/news/309191/

相关文章:

  • 2026会员管理系统软件哪个好?功能、优劣与适用场景全对比
  • 2026年中医执业医师课程培训机构怎么选?这三家哪家好?
  • 执业医师考试哪个课程好?这三个要点与三大机构必须了解!
  • 2026年密度计/密度仪哪个品牌好?口碑、市场占有率及厂家生产实力对比
  • 智慧工地工程车篷布未覆盖分割数据集
  • 无人机火灾实例分割数据集
  • 火灾烟雾分割数据集
  • 基于 Roboflow 洪水检测数据集(`FLOOD SEPTEMBER 23 DATASET`)训练目标检测模型的完整代码
  • 风筝断了线
  • 【国产桌面操作系统】打包opencv的离线安装包
  • 2026年重庆优质连接器预应力配件销售厂家推荐与选择指南
  • 为什么说MoonBit是AI时代的编程语言
  • GoWind Admin|风行 — 开箱即用的企业级全栈中后台框架・内置微服务接口数据聚合能力
  • GoWind Admin|风行 — 开箱即用的企业级全栈中后台框架:数据权限体系设计与实现
  • 学长亲荐2026 TOP9 AI论文工具:专科生毕业论文神器测评
  • 全球首款8K全景无人机成本曝光 影翎A1标准套装综合硬件成本约5512.52元
  • 电力场景输电线路防外力破坏检测数据集VOC+YOLO格式1106张5类别
  • 教培管家第10讲:套餐管理——把教育服务“产品化”
  • 通达信【支撑压力突破】主图指标公式CJM99源码分享
  • 2026年简历自动筛选工具排名:从Moka到世纪云猎的效率大比拼
  • I/O重定向函数dup2
  • 【风电光伏功率预测】别再只盯“准确率”了:把不确定性变成收益,分布式预测怎么决定报量“偏保守”还是“偏进攻”?
  • 【高精度气象】航运避台别只看路径:风圈扩张 + 涌浪滞后,才是“绕不绕、绕多远”的真答案
  • 【芯片寿命的隐形裁判:深入解析TDDB失效机制与防护策略】
  • 直播带货提词器推荐
  • JBoltAI框架:Java大模型开发的架构、方案与范例
  • 05.this的绑定规则、优先级、和相关面试题
  • 2026年文旅民宿优质供应商推荐榜:四川太空舱民宿、四川木屋民宿、四川民宿规划设计、四川集装箱民宿、太空舱木屋集装箱民宿选择指南
  • 必看!2026年重庆钢绞线工厂排名与前五大高品质1*7钢绞线推荐
  • C++精灵库简介(小朋友版)