Spring Cloud部署+Mybatis整合

一:架构简介

Spring Cloud是微服务思想的体现。每个项目单独部署,我只需要知道你服务的name就能直接调用你,而不关心你的ip和端口的变化。当接口服务不可用的时候,我能感知到你无法用了,就不再使用你。

我们做这么一个场景:

producer

有一个生产者服务producer1,对外提供用户的信息。(Spring Boot构建)

用户信息保存在MySQL中,读取MySQL数据的时候,用MyBatis框架实现dao层的代码。(Mybatis整合)

将构建好的项目copy出来一份,改一下端口号,服务的名字不变。(做集群模拟)

producer1 和 producer2都注册到Eureka中

Eureka

创建一个Spring Boot项目,

二:创建生产者项目producer1

(1)创建一个maven项目,pom文件添加依赖如下

<?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>com.cs.cloud</groupId>
    <artifactId>producer1</artifactId>
    <version>1.0-SNAPSHOT</version>

    <!-- 引入spring boot的依赖 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <!-- 引入spring web的依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- 引入spring 操作数据库依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <!-- H2数据库 -->
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>
    </dependencies>

    <!-- 引入spring cloud的依赖 -->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Finchley.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <!-- 添加spring-boot的maven插件 -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

(2)新建启动类

(3)写controller

原文地址:https://www.cnblogs.com/CUI-S/p/11824432.html

时间: 2024-10-08 05:58:00

Spring Cloud部署+Mybatis整合的相关文章

Spring、Spring MVC、MyBatis整合文件配置详解

使用SSM框架做了几个小项目了,感觉还不错是时候总结一下了.先总结一下SSM整合的文件配置.其实具体的用法最好还是看官方文档. Spring:http://spring.io/docs MyBatis:http://mybatis.github.io/mybatis-3/ 基本的组织结构和用法就不说了,前面的博客和官方文档上都非常的全面.jar包可以使用Maven来组织管理.来看配置文件. web.xml的配置                                           

spring cloud + springmvc+mybatis分布式微服务云架构

做一个微服务架构需要的技术整理: View: H5.Vue.js.Spring Tag.React.angularJs Spring Boot/Spring Cloud:Zuul.Ribbon.Feign.Turbine.Hystrix.Oauthor2.Sleuth.API Gateway.Spring Cloud.Config Eureka.SSO.Spring Cloud.BUS.Turbine.Zipkin.Cache.Spring Cloud Admin.API Gateway.ELK

spring boot 与 Mybatis整合(*)

在pom.xml文件中加入数据库.spring-mybatis整合 <!-- spring boot 整合mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.0</version> </dep

spring,springMvc和mybatis整合配置

一,配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/n

Spring MVC + Spriing + MyBatis整合,写给新人

开发环境: 开发工具:MyEclipse 8.6 数据库:MySQL 操作系统:WIN8.1 Jar包: Spirng和SpringMVC版本:3.2.9 MyBatis版本:3.2.8 其他关联Jar包如图: --------------------------------------------------------------------------------- OK , 准备的东西齐全了 .这就动手,先用MyEclipse新建一个网站工程,然后将所有的Jar包放到WebRoot/WE

spring cloud gateway oauth 整合

https://gitee.com/owenwangwen/open-capacity-platform/tree/master/new-api-gateway package com.open.capacity.client.filter; import java.util.List; import java.util.Map; import javax.annotation.Resource; import org.apache.commons.lang3.StringUtils; impo

spring cloud中利用sidecar整合异构语言(转)

用spring cloud sidecar的整合异构语言,以前做过没有做笔记,现在再做由于各种坑又浪费了一天,这里记一下 首先是官网:http://cloud.spring.io/spring-cloud-static/spring-cloud-netflix/1.3.1.RELEASE/ 官网上面讲sidecar讲的很简单,具体怎么做这里就不记了,无非就是加包,然后在主函数上面注解,再在配置文件里面写点东西,以后再看官网就行了,这里记一下官网没有讲到的东西 1.sidecar是用来整合异构语言

kubernetes部署spring cloud微服务项目

微服务架构是一项在云中部署应用和服务的新技术.大部分围绕微服务的争论都集中在容器或其他技术是否能很好的实施微服务,而红帽说API应该是重点. 微服务可以在"自己的程序"中运行,并通过"轻量级设备与HTTP型API进行沟通".关键在于该服务可以在自己的程序中运行.通过这一点我们就可以将服务公开与微服务架构(在现有系统中分布一个API)区分开来.在服务公开中,许多服务都可以被内部独立进程所限制.如果其中任何一个服务需要增加某种功能,那么就必须缩小进程范围.在微服务架构中

09 Spring Cloud的集群保护框架Hystrix

1.概述 在很多系统架构中都需要考虑横向扩展.单点故障等问题,对于一个庞大的应用集群,部分服务或机器出现问题不可避免.在出现问题时,如何减少故障的影响.保障集群的高可用,成为一个重要的课题.在微服务集群中,不管是服务器,还是客户端,都支持集群部署,本节将介绍Spring Cloud中所用的集群保护框架:Hystrix. 1.1实际问题   假设有如下应用程序 用户范围销售模块,服务通过Web接口或者其他方式访问会员模块,会员模块访问数据库.如果数据库因为某些原因变得不可用,会员模块就会得到"数据