一、准备工作

先在eclipse中导入mybatis的dtd约束:

  • mybatis-3-config.dtd
  • mybatis-3-mapper.dtd

导入方法如图:

新建一张数据表dept:

DROP TABLE IF EXISTS `dept`;
CREATE TABLE `dept` (`deptno` bigint(20) NOT NULL AUTO_INCREMENT,`dname` varchar(50) DEFAULT NULL,PRIMARY KEY (`deptno`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;-- ----------------------------
-- Records of dept
-- ----------------------------
INSERT INTO `dept` VALUES ('1', '开发部');
INSERT INTO `dept` VALUES ('2', '财务部');
INSERT INTO `dept` VALUES ('3', '市场部');
INSERT INTO `dept` VALUES ('4', '后勤部');
INSERT INTO `dept` VALUES ('5', '公关部');
INSERT INTO `dept` VALUES ('9', '测试部');
INSERT INTO `dept` VALUES ('10', '测试部');

二、Mybatis环境搭建

第一步:添加pom依赖,导入mybatis所需jar包,pom依赖如下:

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- mybatis依赖 --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.0</version></dependency><!-- mysql驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!-- druid依赖 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.0</version></dependency><!-- 分页插件 --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.3</version></dependency></dependencies>

第二步:在src/main/resource目录下新建application.yml配置文件:

server:port: 8000   #  配置启动端口号  mybatis:config-location: classpath:mybatis/mybatis.cfg.xml    #  mybatis主配置文件所在路径type-aliases-package: cn.lizheng.study.mybatis.pojo   #  定义所有操作类的别名所在包mapper-locations:                                     #  所有的mapper映射文件- classpath:mybatis/mapper/*.xmlspring:datasource:type: com.alibaba.druid.pool.DruidDataSource  #  配置当前要使用的数据源的操作类型driver-class-name: org.gjt.mm.mysql.Driver    #  配置mysql的驱动程序类url: jdbc:mysql://localhost:3306/数据库名字?useUnicode=true&characterEncoding=UTF-8         #  数据库连接地址username: ***                                 #  数据库用户名password: ***                                 #  数据库密码filters: stat,wall,log4j                      #  配置druid过滤器,开启监控dbcp2:                                        #  进行数据库连接池的配置min-idle: 5                                 #  数据库连接池的最小维持连接数initial-size: 5                             #  初始化提供的连接数max-total: 5                                #  最大连接数max-wait-millis: 200                        #  等待连接获取的最大超时时间pagehelper:                       #pagehelper分页插件helperDialect: mysql          #设置数据库方言reasonable: truesupportMethodsArguments: trueparams: count=countSql

第三步:书写mybatis主配置文件(mybatis.cfg.xml
在src/main/resource目录下新建文件夹目录:mybati,然后将在该目录下新建mybati.cfg.xml配置文件,内容如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration><!-- 进行mybatis的相应的环境的属性定义 --><settings><!-- 在本项目中开启二级缓存 --><setting name="cacheEnabled" value="true"/></settings></configuration>

第四步:在src/mian/java目录中新建springboot启动类ApplicaitonStarter.java

package cn.lizheng.study.mybatis;import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class ApplicationStarter {public static void main(String[] args){SpringApplication.run(ApplicationStarter.class, args);}
}

第五步:编写pojo:Dept.java

package cn.lizheng.study.mybatis.pojo;public class Dept {private Long deptno;private String dname;public Long getDeptno() {return deptno;}public void setDeptno(Long deptno) {this.deptno = deptno;}public String getDname() {return dname;}public void setDname(String dname) {this.dname = dname;}
}

第六步、编写pojo对应的mapper接口

package cn.lizheng.study.mybatis.mapper;import java.util.List;import org.apache.ibatis.annotations.Mapper;import cn.lizheng.study.mybatis.pojo.Dept;/*** dept表mapper接口* @author zhengL**/
@Mapper  //  该注解一定要加,否则无法映射到mybatis的***.xml局部配置文件
public interface DeptMapper {List<Dept> findAll(); void addDept(Dept dept);
}

第七步、创建dept表的mybatis局部配置文件dept.xml
在第二步编写application.yml配置文件时,我们添加了mybatis的相关配置如下:

mybatis:config-location: classpath:mybatis/mybatis.cfg.xml    #  配置文件所在路径type-aliases-package: cn.lizheng.study.mybatis.pojo   #  定义所有操作类的别名所在包mapper-locations:                                     #  所有的mapper映射文件- classpath:mybatis/mapper/*.xml

这个地方的三个配置路径一定要正确。所以我们在src/main/resource/mybatis目录下新建文件夹mapper,然后新建一个dept.xml,内容如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="cn.lizheng.study.mybatis.mapper.DeptMapper"><!-- 通过ID查询一个用户 --><select id="findAll" resultType="Dept">SELECT deptno,dname FROM dept ;</select><insert id="addDept" parameterType="Dept" >INSERT INTO dept(dname) VALUES (#{dname}) ;</insert>
</mapper>

这个地方要注意namespace的路径一定要写正确。

第八步、创建DeptService接口

package cn.lizheng.study.mybatis.service;import java.util.List;import org.springframework.stereotype.Service;import cn.lizheng.study.mybatis.pojo.Dept;/*** dept服务接口* @author zhengL**/
public interface DeptService {/*** 获取所有部门信息* @return*/List<Dept> findAll(); /*** 添加部门 * @param dept*/void addDept(Dept dept);
}

第九步、创建DeptService接口的实现类DeptServiceImpl.java

package cn.lizheng.study.mybatis.serviceimpl;import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import cn.lizheng.study.mybatis.mapper.DeptMapper;
import cn.lizheng.study.mybatis.pojo.Dept;
import cn.lizheng.study.mybatis.service.DeptService;/*** dept服务接口实现类* @author zhengL**/
@Service  //  该注解一定要写,否则无法注册bean
public class DeptServiceImpl implements DeptService{@Autowiredprivate DeptMapper deptMapper;  //  注入mapper@Overridepublic List<Dept> findAll() {return deptMapper.findAll();}@Overridepublic void addDept(Dept dept) {deptMapper.addDept(dept);}}

第十步、编写dept对应的控制器类:DeptController.java

package cn.lizheng.study.mybatis.controller;import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import cn.lizheng.study.mybatis.pojo.Dept;
import cn.lizheng.study.mybatis.service.DeptService;/*** dept控制器* @author zhengL**/
@RestController  //  此注解指明该控制器直接返回数据,而不进行页面跳转
@RequestMapping("/dept")  //  定义路由信息
public class DeptController {@Autowiredprivate DeptService deptService;/*** 查询所有部门信息* @return*/@RequestMapping("/findAll")  //  则次路由信息应该是/dept/findAllpublic List<Dept> findAll(){return deptService.findAll();}
}

最后在ApplicationStarter类上追加如下配置:
@MapperScan(“cn.lizheng.study.mybatis.mapper”)

运行项目,然后在浏览器输入http://localhost:8000/dept/findAll,然后回车:

成功!!!!

SpringBoot整合Mybatis详细教程相关推荐

  1. springboot整合mysql5.7_详解SpringBoot整合MyBatis详细教程

    1. 导入依赖 首先新建一个springboot项目,勾选组件时勾选Spring Web.JDBC API.MySQL Driver 然后导入以下整合依赖 org.mybatis.spring.boo ...

  2. SpringBoot整合MyBatis详细教程~

    目录 1. 导入依赖 2. 连接数据库 3. 编写数据库配置信息 4. 编写pojo实体类 5. 编写mapper接口 6. 编写mapper.xml 7. 编写controller 8. 测试 1. ...

  3. springboot整合redis详细教程

    spring boot 整合 redis 详细教程 注意:本次实验环境 是将 redis 安装在 CentOS7.x-86_x64 中 教程中用到的软件(VMware Workstation Pro. ...

  4. springboot整合mybatis详细步骤

    1.首先导入mybatis.mysql.springboot的相关依赖 <!-- mybatis-spring-boot-starter --><dependency>< ...

  5. SpringBoot整合Mybatis超详细流程

    SpringBoot整合Mybatis超详细流程 文章目录 SpringBoot整合Mybatis超详细流程 前言 详细流程 0.引入Mybatis 1.创建数据 2.创建程序目录 3.理解后台访问流 ...

  6. SpringBoot(二):详细讲解SpringBoot整合MyBatis

    IDEA版SpringBoot整合MyBatis 整合mybatis需要的jar包 <dependency><groupId>org.projectlombok</gro ...

  7. SpringBoot整合Mybatis(高级)

    SpringBoot整合Mybatis(高级) 文章目录 SpringBoot整合Mybatis(高级) 前言 基础环境配置 增删改查 ResultMap 复杂查询 多对一 一对多 动态SQL if ...

  8. (一)SpringBoot 整合 MyBatis

    一.工具 IDE:idea.DB:mysql 二.创建SpringBoot工程 在Idea中使用SpringInitializr模板创建SpringBoot工程,依赖选择如下: 这里也可以不选JDBC ...

  9. SpringBoot整合MyBatis与MySql8.0

    一.前言 之前已经有一篇文章讨论过SpringBoot整合MyBatis,因而此篇不在重复累赘,本文主要是最新版的SpringBoot2.0与MyBatis.最新MySQL8.0整合过程中遇到的问题进 ...

  10. mybatis plugins_[MyBatis] SpringBoot 整合Mybatis

    现在基本上搭建一个简单的工程都是三剑客 springboot+mybatis+redis 之前整合Mybatis 都是按照SSM来,所以,这一次带来SpringBoot+MyBatis 的快速整合 p ...

最新文章

  1. 深入理解Lustre文件系统-第13篇 未来的工作
  2. 读书笔记《锋利的jQuery》
  3. 理解 iOS 和 macOS 的内存管理
  4. 综合应用题:多线程复制文件(知识点:多线程、随机读写流)
  5. Web服务器常用端口
  6. 关于printf输出 格式化规定符 的
  7. java 常量接口_java接口定义常量研究
  8. “攻城狮”手把手教你物联网智能生活-内网穿透技术
  9. java反射 虚拟机优化_面试官问我:Java反射是什么?我回答竟然不上来......
  10. 计算机组成原理 北理,北京理工大学计算机组成原理期末复习.pdf
  11. 第3关:HDFS-JAVA接口之上传文件
  12. BZOJ2137: submultiple(生成函数,二项式定理)
  13. php调用shell的方法
  14. FSO对象新建、打开、保存文件
  15. 如何将区块链技术用于版权保护?
  16. Mac苹果电脑怎么创建加密文件夹
  17. CTPN源码解析2-代码整体结构和框架
  18. html标签(5):form,input,select,textarea
  19. 专题二:浅谈社交行业如何有效反欺诈
  20. 【Pandas数据处理100例目录】Python数据分析玩转Excel表格数据

热门文章

  1. 无线网卡mac地址修改
  2. android移动开发慕课版本_Android移动开发基础教程(慕课版)
  3. Android Studio|简单记事本开发
  4. mock gps android,MockGPS: Android application to fake GPS
  5. C语言——函数的调用
  6. PR视频剪辑软件教程
  7. 简易可行Live2D直播应用路线分享
  8. 【全文干货】python—函数详解(值得收藏的学习手册)
  9. 【MySQL】MySQL的常用升级方法
  10. kodi pvr 不能安装_Kodi看电视直播教程 安装PVR IPTV Simple Client播放m3u8直播源