springcloud整合Mybatis

更新时间:2024-01-18 06:22:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

目 录

第一部分 背景介绍步骤...................................................................................................................... 2 1. 引言 ................................................................................................................................................... 2

1.1.

编写目的 ......................................................................................................................... 2

1.1.1. 1.1.2.

1.2. 1.3. 1.4.

作用 ................................................................................................................... 2 预期读者 ........................................................................................................... 2

编写背景 ......................................................................................................................... 2 电子文档编写工具 ......................................................................................................... 2 参考资料 ......................................................................................................................... 3

2. 总体设计 ........................................................................................................................................... 3

2.1. 2.2. 2.3.

系统目标 ......................................................................................................................... 3 软件架构 ......................................................................................................................... 3 部署方案 ......................................................................................................................... 3

3. 问题及风险 ....................................................................................................................................... 4

3.1.

问题 ................................................................................................................................. 4

第二部分 具体搭建步骤...................................................................................................................... 6

1.

整合MYBATIS 并入数据库MYSQL ..................................................................................... 6

1.1 依赖引入 .................................................................................................................. 6

1.2 配置文件 .................................................................................................................... 7 1.3启动类 ......................................................................................................................... 8

2. 3.

类结构遵循MYBATIS模式 ................................................................................................. 9

2.1 Mapper类 ................................................................................................................... 9

启动调用测试 ................................................................................................................... 10

3.1启动服务 ................................................................................................................... 10 3.2 Consumer调用服务 ................................................................................................. 11 3.3测试 ........................................................................................................................... 12

Springcloud整合Mybatis

第一部分 背景介绍步骤 1. 引言

1.1. 编写目的 1.1.1.作用

在分布式系统中,服务与服务之间依赖错综复杂,想要一次性获取所有的微服务信息就变得尤为困难,所以我们引入数据库,可以将庞杂的数据引入数据库利用mybatis来进行操作,管理,展示。

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。配合我们的框架springcloud,从而做到控制分布式系统中的联动信息数据管理。在远程服务不可用时自动熔断,并在远程服务恢复时自动恢复,从而提高了这个分布式系统的弹性。

1.1.2.预期读者

微服务服务开发人员,测试人员,运维人员

1.2. 编写背景

为了指导本公司微服务的开发人员更好的运用Spring Cloud 整合Mybatis,特编写该文档。

需要注意的是该文档只是对整合简要介绍,更重要的是指导开发人员在开发微服务时更好的利用该特性,并不是详细说明文档。

1.3. 电子文档编写工具

Microsoft Word 2010 for Windows 2000

Microsoft Visio 2010 for Windows 2000

1.4. 参考资料

Mybatis官方网站

Spring Cloud官方网站 CSDN等技术网站 Mysql官网

2. 总体设计

2.1. 系统目标

整合springcloud和mybatis 在consul和Eureka两端都做整合达到提供数据提取管理的微服务。

2.2. 软件架构

由于我们是用双服务发现 服务端Consul和客户端的Eureka 所以需要将mybatis整合到两个上面

2.3. 部署方案

该特性相当于微服务接口功能的扩展,需要在每个微服务接口中进行使用,所以需要跟随微服务进行统一部署。

运维人员可以利用之前搭建好的Hystrix提供的监控平台对微服务调用情况进行监控。这里有两种部署情况:

? 单点部署

3. 问题及风险

3.1. 问题

1. 只验证了数据拿取,真正的其他微服务接入还未尝试 (注意mybatis中的各个层的应用名字规范)

2.

关于数据库的配置 驱动 url之类的 只能配置在本地有mysql依赖的地方 不能配置到远程配置中心

3.首先是在consul里mysql依赖用5.1.41版本

Mybatis首次验证用 1.1.1版本 验证失败 报错:“日志版本不兼容” 后修改为

1.2.4

org.mybatis.spring.boot mybatis-spring-boot-starter RELEASE

验证 成功

Mybatis 分层

Controller Dao Service Model Mapper

要严格分层

然后是在Eureka里整合mybatis

Eureka里要求更严格 spring-boot整合mybatis的版本依赖和spring-boot-starter依赖是对应兼

容的

详细的表 请参照官网 http://mvnrepository.com/artifact/org.mybatis/mybatis-spring

此处由于我们spring-boot-starter用的是1.4.5(Cm.SR7默认) 查询得知 mybatis-spring-boot依赖应该是用 1.2.1 版本

然后我们再启动Mybatis微服务

发现已经成了

然后我们需要用controller提供的服务接口来调用微服务

可以看到如图的接口

我们在Consumer中就可以写方法来调用他了

3.2 Consumer调用服务

在Eureka里的服务调用是经过负载的 所以我们用官方提供的restTemplate来对接口进行调用

首先实例化 并且开启负载 加入spring容器

在service层中释放容器中的实例 并且调用

调用服务 因为服务是需要参数的 所以此处要注意携带

然后我们将这次调用 同样通过一个接口在Controller层里放出

就可以了

3.3测试

依次启动EurekaServer ConfigServer Mybatis Consumer

根据consumer端口调用mybatis服务

如果不带参数 就会报错

携带参数之后 就可以获得mysql数据库中与实例对应的数据了

对照数据库 发现唔错

以上完成Eureka端的调用和整合

Consul端的整合和Eureka端的一样 只是调用的时候需要借助nginx 此处不需要详细研究 待补充.

本文来源:https://www.bwwdw.com/article/9xto.html

Top