SpringBoot整合MyBatis并使用Redis作为缓存组件的Demo

10次阅读

共计 3261 个字符,预计需要花费 9 分钟才能阅读完成。

本博客 猫叔的博客,转载请申明出处

本系列教程为 HMStrange 项目附带。

Auth:HMStrange-TIAN e-mail:zhangqihao@hnu.edu.cn

历史文章

  • 如何在 VMware12 安装 Centos7.6 最新版
  • Centos7.6 安装 Java8
  • Centos7.6 安装 MySQL+Redis(最新版)
  • SpringBoot+MySQL+MyBatis 的入门教程
  • SpringBoot+Redis 的入门教程
  • Centos7.6 安装 4.0.8MongoDb 教程

安装流程

1、安装 docker & redis

如果不清楚 docker 是什么,请查看 docker 的文档和简介,这里给出 docker 的安装过程

1.1 安装虚拟机(如果有远程服务器的,请略过此步骤)

本文推荐 VMvare,尽管 vmvare 比较臃肿,但是对于新手比较友好,配置很简单
从官网下载 VMvare,官网地址:https://www.vmware.com/cn.html
从官网下载 centos 镜像文件,官网地址:https://www.centos.org/download/
打开 VMvare 创建虚拟机,导入镜像系统
Vmvare 会自动配置,根据提示输入账户和密码之后,等待自动配置即可

1.2 打开虚拟机的 terminal,输入 ifconfig 查看 ip 地址,如图:

1.3 使用远程工具连接服务器,本文推荐使用 Cygwin/SmartTTY/Putty/GitBash

打开连接工具,使用 ssh root@192.168.xx.xx,登陆服务器即可操作

1.4 安装 docker

  • 1.4.1 检查内核版本,必须是 3.10 及以上
uname -r
  • 1.4.2 安装 docker
yum install docker

输入 y 确认安装

  • 1.4.3 启动 docker
systemctl start docker 

查看 docker 时候安装成功

docker -v

若有提示如:Docker version 1.12.6, build 3e8e77d/1.12.6,则安装成功

设置开机启动 docker

systemctl enable docker

如果想停止 docker(慎重!!!)

systemctl stop docker
  • 1.4.4 常见 docker 命令以及操作

a)镜像操作

检索镜像

docker search keyword

例如:docker search mysql
拉取镜像

docker pull iamges

例如:docker pull registry.docker-cn.com/library/mysql
查看镜像列表

docker images

删除镜像

docker rmi image(镜像)-id

b) 容器操作
根据拉取的镜像启动容器(可以 docker images 查看已有的镜像,启动需要的镜像)

docker run --name mymysql -d mysql:latest

–name 后面是容器的名字 -d 表示后台运行 latest 是 tag 标签,表示最新版本
查看运行中的容器、

docker ps

停止运行中的容器

docker stop 容器的 id

查看所有的容器

docker ps ‐a

启动容器

docker start 容器 id

删除一个容器

docker rm 容器 id

启动一个做了端口映射的容器

docker run ‐d ‐p 8080:8080

-d:后台运行 -p : 将主机的端口映射到容器的一个端口 主机端口:容器内容端口
更多命令和操作请查看 docker 官网

1.5 使用 docker 安装 redis

  • 1.5.1 搜索镜像

  • 1.5.2 拉取镜像
docker pull docker.io/redis
  • 1.5.3 查看镜像

  • 1.5.4 运行镜像
docker run -d -p 6379:6379 --name myredis docker.io/redis
  • 1.5.5 查看运行中的镜像
docker ps

此时,使用 docker 安装、运行镜像已经完成了

1.6 使用 RedisDesktopManager 连接 Redis 数据库

下载地址:https://redisdesktop.com/down…
设置连接名、主机名字(就是我们前面输入 ifconfig 查看得到的 ip)、端口号(暴露的那个端口号就是用那个端口号,默认为 6379)

点击 Tes tConnection 显示 successful 点击 OK
更多关于 redis 的操作命令请查看官网:
http://www.redis.cn/

2、springboot 整合 mybatis

2.1、打开 IDEA,使用 springboot Initializr 快速创建向导

  • 点击下一步

  • 输入相应的 Group、Artifact(不会的请先学习 IDEA)

  • 选择相应的模块,如右下方红框所示

  • 输入项目 name 和项目 address

2.2、创建完成后,可以看到 pom 文件中引入了相应的 starter

2.3、在 IDEA 中配置 mysql 数据库

  • 2.3.1 配置 mysql

新建数据库 student,新建表 student

注:关于如何安装 mysql、navicat 以及如何使用请自行百度

  • 2.3.2 在项目的目录结构中找到 application.properties 或者新建一个 application.yml(关于 yml 的语法请自行百度)

url 的配置规则请百度,输入自己数据库的用户名和密码

2.4、编码:新建 entity 实体类、service、service 的实现类、以及 mapper 接口,然后在 resource 目录下建立对应的 mapper 以及 mabatis 的配置文件

  • 2.4.1 项目目录结构如下:

  • 2.4.2 entity 代码如下

  • 2.4.3 Service 代码如下

  • 2.4.4 Service 实现方法如下

注意:在实现方法上加 @Service 注解

  • 2.4.5 mapper 如下

注意: 在接口上方加 @mapper 注解

  • 2.4.6 Controller 如下

注意:加 @RestConroller 注解

  • 2.4.7 mapper 映射文件如下

关于映射文件的语法,请查看官方文档,此处给出 mybatis 的中文文档:
http://www.mybatis.org/mybati…
resource/mybatis/mapper/StudentMapper.xml(此文件的路径)

  • 2.4.8 mybatias 配置文件(这里没有作任何配置,但是这个文件一定要有)

resource/mybatis/mybatis-config.xml

  • 2.4.9 在 application.properties 配置 mybatis

这两个配置是核心,其余配置可参考官方文档

  • 2.4.10 在 student 表中插入相关数据

如果不知道怎么插入数据,那么 …….. 请百度 ………

2.5 打开浏览器进行测试

结果如下:
此处用的 google 测试,也可以使用其他接口测试工具

3、springboot 整合 redis

3.1 在 pom 文件中引入 redis 的坐标

3.2 在 application.properties 或者是 application.yml 中配置 redis,host 就是你的服务器的 ip

3.3 在 springboot 的启动类开启缓存注解

3.4 新建 redisConfig 类配置 redis

不要忘记加 @Configuration,两个 bean 都是为了改变序列化的机制

3.5 在 service 的实现类上开启注解

3.6 测试结果,

  • 3.6.1 先开启日志打印

红框内是 mapper 的相对路径

  • 3.6.2 第一次在浏览器请求会发现,控制台打印了 sql 语句

发起请求,在浏览器地址栏输入:

http://127.0.0.1:8080/student/1

查看控制台

此时,student 对象已被缓存到了 redis 中

  • 3.6.2 第二次从浏览器发起请求,发现控制台没有打印 sql 日志,说明缓存成功,使用 RedisDesktopManager 查看数据库

9、项目下载地址

欢迎到 HMStrange 项目进行下载:https://github.com/UncleCatMy…

公众号:Java 猫说

学习交流群:728698035

现架构设计(码农)兼创业技术顾问,不羁平庸,热爱开源,杂谈程序人生与不定期干货。

正文完
 0