| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> Spring Boot集成MyBatis指南 -> 正文阅读 |
|
[Java知识库]Spring Boot集成MyBatis指南 |
引言Spring Boot+MyBatis依然是当下国内最流行和使用最广泛的框架,让我们从基础部分来重新学习下这套经典组合吧。 什么是MyBatisMyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis配置简单,使用方便灵活,下面我们就来看一下Spring Boot如何轻松集成MyBatis的吧! 引入依赖本文使用的Spring Boot版本为2.7.4,这里可以通过Maven或者Gradle来引入依赖 Maven
Gradle
版本适配情况
如需要了解MySQL的安装过程,可以查看我的另外一篇文章:CentOS8安装MySQL8详细教程,爬坑必备,希望可以帮到你。 应用配置设置数据源以及MyBatis的基础配置
Spring数据源配置配置数据库连接URL以及用户名密码 MyBatis mapper-locations配置Mapper.xml文件的存放位置,一般放在resources下的mapper文件夹下(Mapper.java和Mapper.xml一般是要一一对应的,名称最好保持一致),如果未设置的话,会出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)的异常 MyBatis map-underscore-to-camel-case开启带有下划线的表字段与驼峰命名的Java实体字段自动映射的功能 编写代码我们先来创建一个user表
创建实体类建好表以后,我们来创建User的实体类
创建Mapper接口下面我们来创建MyBatis中最重要的Mapper接口,真正操作数据库的方法就在这里定义。下面这段代码简单定义了插入数据和查询数据的方法
UserMapper使用了@Mapper注解,用来标记这是一个MyBatis的Mapper接口 创建Mapper XMLMapper接口已经定义了,那我们具体要怎么实现呢?Mapper.xml就是Mapper接口的具体实现
我们来分析下上面的这段XML
这是XML的文档声明和DTD文档类型定义,http://mybatis.org/dtd/mybatis-3-mapper.dtd文件中定义了XML的标签、属性以及描述等信息,我们这里不过多关注。 mapper标签
这个标签是用来跟Mapper接口建立关联的,它只有一个属性namespace,用来指定相应Mapper接口的引用Reference。这里如果配置的引用路径不正确,也会出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)的异常。 insert标签
表示一个insert语句,其中id属性是该标签的唯一标识符,对应Mapper接口中定义的具有相同名称的方法,这个例子中就对应UserMapper接口中insert(User.class)方法 select标签
表示一个select语句,id属性与insert标签的id属性一样 Mapper.xml就相当于是Mapper接口的实现类,mapper标签通过namespace属性与Mapper接口进行映射,mapper下的insert、select等子标签对应的就是Mapper接口的方法,子标签中的id属性值与方法名要 测试代码我们创建一个UserTest的测试类
我们先来测试insert方法,如下图点击测试方法左上角的按钮进行测试 测试成功会输出如下内容 这时我们使用DataGrip或者Navicat去连接数据库,查看数据是否插入成功: OK,我们再来测试查询的方法,点击运行,输出如下 效率插件如果你使用的是Intellij IDEA,这里推荐一款插件,可以提高MyBatis的开发效率——MyBtisX。
快速跳转在IDEA的插件市场里搜索安装后,你会发现Mapper接口和Mapper.xml文件发生了变化: 代码提示与检查如果你在IDEA#Database中配置了当前项目使用的数据库,那么在XML中编写SQL语句就会像在DataGrip或Navicat中一样,智能提示,非常方便 代码生成器在IDEA#Database中找到你要生成代码的表,右键点击会弹出如下提示 本文介绍了Spring Boot如何集成MyBatis以及简单使用的过程,后面还会陆续推出一系列MyBatis的进阶课程,这里你可以学到关于MyBatis的一切,有问题可以在评论区交流下,欢迎点赞关注收藏。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年3日历 | -2025/3/10 17:08:34- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |