Spring Boot 整合 Mybatis Annotation 注解的完整 Web 案例
发布时间 - 2026-01-11 01:06:12 点击率:次前言

距离第一篇 Spring Boot 系列的博文 3 个月了。虽然 XML 形式是我比较推荐的,但是注解形式也是方便的。尤其一些小系统,快速的 CRUD 轻量级的系统。
这里感谢晓春 http://xchunzhao.tk/ 的 Pull Request,提供了 springboot-mybatis-annotation 的实现。
一、运行 springboot-mybatis-annotation 工程
然后Application 应用启动类的 main 函数,然后在浏览器访问:
http://localhost:8080/api/city?cityName=温岭市
可以看到返回的 JSON 结果:
{
"id": 1,
"provinceId": 1,
"cityName": "温岭市",
"description": "我的家在温岭。"
}
三、springboot-mybatis-annotation 工程配置详解
1.pom 添加 Mybatis 依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>springboot</groupId>
<artifactId>springboot-mybatis-annotation</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>springboot-mybatis-annotation</name>
<description>Springboot-mybatis :: 整合Mybatis Annotation Demo</description>
<!-- Spring Boot 启动父依赖 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.1.RELEASE</version>
</parent>
<properties>
<mybatis-spring-boot>1.2.0</mybatis-spring-boot>
<mysql-connector>5.1.39</mysql-connector>
</properties>
<dependencies>
<!-- Spring Boot Web 依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Spring Boot Test 依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- Spring Boot Mybatis 依赖 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis-spring-boot}</version>
</dependency>
<!-- MySQL 连接驱动依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql-connector}</version>
</dependency>
<!-- Junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
</project>
2.在 CityDao 城市数据操作层接口类添加注解 @Mapper、@Select 和 @Results
/**
* 城市 DAO 接口类
*
* Created by xchunzhao on 02/05/2017.
*/
@Mapper // 标志为 Mybatis 的 Mapper
public interface CityDao {
/**
* 根据城市名称,查询城市信息
*
* @param cityName 城市名
*/
@Select("SELECT * FROM city")
// 返回 Map 结果集
@Results({
@Result(property = "id", column = "id"),
@Result(property = "provinceId", column = "province_id"),
@Result(property = "cityName", column = "city_name"),
@Result(property = "description", column = "description"),
})
City findByName(@Param("cityName") String cityName);
}
@Mapper 标志接口为 MyBatis Mapper 接口
@Select 是 Select 操作语句
@Results 标志结果集,以及与库表字段的映射关系
其他的注解可以看 org.apache.ibatis.annotations 包提供的,如图:
可以 git clone 下载工程 springboot-learning-example ,springboot-mybatis-annotation 工程代码注解很详细。 https://github.com/JeffLi1993/springboot-learning-example 。
以上所述是小编给大家介绍的Spring Boot 整合 Mybatis Annotation 注解的完整 Web 案例,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# spring
# boot整合
# mybatis
# 注解
# spring注解annotation
# Spring整合Mybatis 扫描注解创建Bean报错的解决方案
# springboot整合mybatis-plus基于注解实现一对一(一对多)查询功能
# SpringBoot整合Mybatis注解开发的实现代码
# Spring Boot整合mybatis使用注解实现动态Sql、参数传递等常用操作(实现方法)
# 详解SpringBoot 快速整合Mybatis(去XML化+注解进阶)
# Spring与Mybatis基于注解整合Redis的方法
# 纯注解版spring与mybatis的整合过程
# 温岭
# 小编
# 在此
# 其他的
# 给大家
# 可以看到
# 如图
# 所述
# 给我留言
# 第一篇
# 感谢大家
# 博文
# 疑问请
# 有任何
# 月了
# 晓春
# maven
# gt
# project
# xmlns
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251811 】
【
AI营销90571 】
相关推荐:
如何在IIS中新建站点并配置端口与IP地址?
如何在IIS7中新建站点?详细步骤解析
SQL查询语句优化的实用方法总结
微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】
如何在新浪SAE免费搭建个人博客?
详解jQuery中的事件
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
Laravel如何创建自定义中间件?(Middleware代码示例)
Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
Python文本处理实践_日志清洗解析【指导】
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
佛山网站制作系统,佛山企业变更地址网上办理步骤?
如何快速生成橙子建站落地页链接?
Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用
Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复
移动端脚本框架Hammer.js
Laravel怎么为数据库表字段添加索引以优化查询
rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践
php静态变量怎么调试_php静态变量作用域调试技巧【解答】
Python结构化数据采集_字段抽取解析【教程】
Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】
桂林网站制作公司有哪些,桂林马拉松怎么报名?
深入理解Android中的xmlns:tools属性
如何在服务器上三步完成建站并提升流量?
微信小程序 wx.uploadFile无法上传解决办法
进行网站优化必须要坚持的四大原则
JavaScript中的标签模板是什么_它如何扩展字符串功能
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
node.js报错:Cannot find module 'ejs'的解决办法
如何在Windows服务器上快速搭建网站?
微信小程序 闭包写法详细介绍
如何快速启动建站代理加盟业务?
Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧
使用spring连接及操作mongodb3.0实例
微信公众帐号开发教程之图文消息全攻略
laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法
如何实现建站之星域名转发设置?
edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】
如何用搬瓦工VPS快速搭建个人网站?
北京的网站制作公司有哪些,哪个视频网站最好?
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
如何用已有域名快速搭建网站?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】
零基础网站服务器架设实战:轻量应用与域名解析配置指南
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
iOS UIView常见属性方法小结

