![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
从零学 spring cloud
heyu5225
希望能给新手小白带来一点点的帮助
展开
-
从零学 spring cloud写到当前的思考
写到当前,有些写得比较简单,离生产的应该是差得很远的,我理解中的生产应用,应该是少了以下的东西1、目前springcloud没有一个可以配置的任务调用系统,我理解的是,一个可以独立运行的系统,不依赖于们的springcloud应用框架,可以配置任意的定时方法调度,一个应该是可视化的、易于查询和运营的系统,并且,还能有权限分配的功能,应该可以配置查询权限,和定制调度权限,并且可以分开配置。它不是只...原创 2020-03-15 21:20:32 · 138 阅读 · 0 评论 -
从零学 spring cloud第11-1课:WebFlux基础之Stream
什么是 Stream?Stream是一个来自数据源的元素队列并支持聚合操作。元素是特定类型的对象,形成一个队列。Java中的Stream并不会存储元素,而是按需计算。数据源流的来源可以是集合,数组,I/O channel, 产生器generator等。聚合操作类似SQL语句一样的操作, 比如filter, map, reduce, find, match, sorted等。和以前的Co...原创 2020-03-04 11:35:13 · 307 阅读 · 0 评论 -
从零学 spring cloud第10-3课:Docker部署Vue项目
我们接着上一节的内容,把我们的antdesignpro部署到我们的docker容器中。我们先在linux的docker中把nginx镜像拉下来docker pull nginx我们还要修改一下我们的vue项目的网关连接,之前我们是在本机上做开发,所以先把它的地改成过,打开vue.config.js,找到devServer,将target: 'http://127.0.0.1:876...原创 2020-02-23 11:04:38 · 229 阅读 · 0 评论 -
从零学 spring cloud第10-2课:Ant Design Pro连接SpringCloud
接上一节的Ant Design Pro项目,做来一个简单的页面。先设计一个表-- auto-generated definitioncreate table epo_value_set( id int auto_increment primary key, type_name varchar(100) not null, typ...原创 2020-02-20 22:32:33 · 702 阅读 · 0 评论 -
从零学 spring cloud第10-1课:前端框架基础
目前市面上前端框架比较多,但目前看来比较好的,是VUE的,对针VUE,有两个比较成名的框架,那就是蚂蚁金服的Ant-desin与饿了么的ElementUI。网址分别如下ant design: http://vue.ant-design.cn/docs/vue/introduce-cn/ElementUI: https://element.eleme.cn/#/zh-CN具体控件的用法我就不...原创 2020-02-20 01:26:40 · 403 阅读 · 1 评论 -
从零学 spring cloud第9-4课:nacos的配置管理功能
目前市场上能做配置中心的方式有很多,有携程框架部门研发的分布式配置中心Apollo(阿波罗),地址是:https://github.com/ctripcorp/apollo,这个是对奈飞的Eureka有依赖,Eureka是已经不再维护的一个产品。还有我们在第8-8课:consul也可以,还有以前一些公司常用的zookeeper。就当下而言,Apollo用的人还是比较多的。当然,阿里是不可能落后的,...原创 2020-02-18 22:10:15 · 106 阅读 · 0 评论 -
从零学 spring cloud第9-3课:当奈飞不在维护Hystrix
从零学 spring cloud第8-5课:Hystrix断路器这一节里面我讲了很重要一个断路器的作用,但是Hystrix已经不再维护了,我们得找一个新的轮子-----sentinel,它的中文意思是哨兵。这是阿里的产品,官网地址: https://github.com/alibaba/Sentinel/wiki 以下是sentinel官网的介绍,Sentinel 是什么?随着微服务的流行,服...原创 2020-02-17 21:53:16 · 280 阅读 · 0 评论 -
从零学 spring cloud第9-2课:zipkin的进阶学习
从零学 spring cloud第8-6课:sleuth链路追踪这一节中,介绍了zipkin的使用,但也是基本的,它只是把日志放在了内存中,其实,我们也可以将日志存在数据库,并且,我们不必要使用docker安装zipkin,这一节,我们使用它现成的jar文件,并且让它连接ElasticSearch持久化日志。之前我们安装ElasticSearch的时候,也是使用了docker,但是没有使用上说的...原创 2020-02-17 18:33:17 · 319 阅读 · 0 评论 -
从零学 spring cloud第9-1课:nacos的进阶学习
第8-7课中,介绍了nacos的基本使用方法,但是生产线上是不可能有这么简单使用的。这一节,我讲一下,如何让他连接mysql数据的使用,使之可以使用到生产中。 目前nacos的版本数据库中只支持mysql的数据库,并且对版本有要求,目前只支持5.6.5+的版本,但不好意思,它不支持8.的源码下载下来,自行修改代码,修改它的mysql的jar引用,使它支持了8.0以后的版本,网上确实很多人都做到...原创 2020-02-16 23:35:38 · 193 阅读 · 0 评论 -
从零学 Spring Cloud:初识Spring Cloud
从零学 Spring Cloud:初识Spring Cloud 以下内容,你可以到spring官网上查看原汁原味,网址在这里 Spring官网Spring框架的发展 Spring 框架最开始的部分是由Rod Johnson于2000年为伦敦金融界提供独立咨询业务时写出来的。在《Expert One-On-One J2EE Development Without EJB》一书中,他...原创 2019-06-17 00:47:47 · 143 阅读 · 0 评论 -
从零学 spring cloud第1-1课:Spring Boot 环境搭建
从零学 spring cloud:1-1课:Spring Boot 环境搭建 要入门,是先把环境先部署起来一、开发IDE 目前 JetBranins 的是使用最多的,下载地扯 :https://www.jetbrains.com/idea/?fromMenu,如果不习惯使用英语,汉化也很容易。当前版本是2019.1.1 ,工具更新较快。不同的版本,汉化文件不一样,要注意。至于破解...原创 2019-06-17 00:48:03 · 201 阅读 · 0 评论 -
从零学 spring cloud第1-2课:Spring Boot 之 hello world
无论学哪一门语言,都是从 hello world开始,spring boot 也不例外。创建项目有两种方式。一、从https://start.spring.io/ 创建打开网站后,按以下操作,生成项目后,会自动下载创建直接解压打开项目二、从 IDE直接创建Spring打开IDE,点击创建新项目选择 spring initializr ,这里会默认选中安装好的 jdk,...原创 2019-06-17 00:48:16 · 193 阅读 · 0 评论 -
从零学 spring cloud第1-3课:Spring Boot 之使用maven打包项目
- 打包 如果我们想把写好的程序放到其他机器上运行,我们要先将项目打包,打包是很简单的,只要一个命令就可以了,我们在使用上节的项目来进行打包,打开项目后,在IDE的左下方,找到 Terminal 输入打包 mvn clean package命令即可如果程序 没有什么问题,打包成功后会有如下结果我第一个选中的信息是打包的结果,第二个是耗时和结束时间。然后我们回到项目代码中,打开...原创 2019-06-17 21:58:24 · 201 阅读 · 0 评论 -
从零学 spring cloud第1-4课:Spring Boot 之后续基础
我们在https://start.spring.io/上可以看到,Spring Boot 有好几个版本。现在对以下版本进行一下说明和注意事项。M版本 M1,M2,M3中的M是milestone的简写,这个单词是里程碑的意思,此版本是极不稳定,且Bug极多,各位只要知道,接下来有什么新版本将要发行就好,如果你用来写代码,有可能让你的 hello world 都不会显示。极力不建议使...原创 2019-06-17 23:23:55 · 173 阅读 · 0 评论 -
从零学 spring cloud第2-1课:基础 Web 开发
JSON返回 目前JSON 对象的使用在web开发中是最多的,我就不在这解释JSON是什么 了,下面直接上DEMO好了。我们创建一个项目,依然是使用 web方式,版本选择2.1.5。DEMO源码:https://github.com/heyu52/-spring-cloud。 在我的项目文件里创建一个包,命名为model,再创建一个包,命名为web。我们在model文件夹中创建一个...原创 2019-06-22 11:34:14 · 171 阅读 · 0 评论 -
从零学 spring cloud第2-2课:基础 Web 开发之数据校验
什么是Hibernate Validator 我们在项目中,经常要对用户输入的参数进行一些参初步的校验,有些人会在前端JS中写一些校验,也有人写在业务代码中。Hibernate Validator框架 提供了更好的解决方案来解决这些问题,可以很优雅的方式实现参数的校验,让业务代码 和 校验逻辑 分开,不再编写重复的校验逻辑。Hibernate Validator 是 Bean Valida...原创 2019-06-22 15:32:15 · 276 阅读 · 0 评论 -
从零学 spring cloud第2-3课:基础 Web 开发之过滤器
什么是过滤器 所谓过滤器,其实就是一个服务端组件,用来截取用户端的请求与响应信息。大概流程图如下过滤器的应用场景对用户请求进行统一认证,保证不会出现用户账户安全性问题编码码转换,可在服务端的过滤器中设置统一的编码格式,避免出现乱码对用户发送的数据进行过滤替换转换图像格式对响应的内容进行压缩 Spring Boot 内置了一些 Filter,比如,处理理编码的 Or...原创 2019-06-22 17:25:56 · 119 阅读 · 0 评论 -
从零学 spring cloud第2-4课:基础 Web 开发之 构建 RESTful Web 服务
什么是 RESTful服务简单的说:RESTful是一种架构的规范与约束、原则,符合这种规范的架构就是RESTful架构。其实我们前几节用的就是RESTful服务,这里做个总结。如何实现 Restful Web Service• 识别资源• 选择合适的资源粒度• 设计 URI• 选择合适的 HTTP ⽅法和返回码• 设计资源的表述关于规范与约束有哪些RESTful 架构的核心规...原创 2019-06-26 20:28:10 · 125 阅读 · 0 评论 -
从零学 spring cloud第2-5课:基础 Web 开发之RESTful API 工具Swagger 2
什么是 Swagger(丝袜哥) 更多概念参见:Implementing Swagger with your API docs Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。目标是为 RES...原创 2019-06-29 17:56:23 · 165 阅读 · 0 评论 -
从零学 spring cloud第3-1课:数据库基础之JDBC
什么是JDBC 项目的DEMO代码:https://github.com/heyu52/-spring-cloud JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库...原创 2019-06-30 12:42:04 · 282 阅读 · 0 评论 -
从零学 spring cloud第3-2课:数据库基础之事务
事务管理是应用系统开发中必不可少的一部分。Spring 为事务管理提供了丰富的功能支持。Spring 事务管理分为编程式和声明式的两种方式。编程式事务指的是通过编码方式实现事务;声明式事务基于 AOP,将具体业务逻辑与事务处理解耦。声明式事务管理使业务代码逻辑不受污染, 因此在实际使用中声明式事务用的比较多。声明式事务有两种方式,一种是在配置文件(xml)中做相关的事务规则声明,另一种是基...原创 2019-06-30 15:51:41 · 135 阅读 · 0 评论 -
从零学 spring cloud第3-3课:数据库基础之MyBatis
什么是MyBatis 项目的DEMO代码:https://github.com/heyu52/-spring-cloud MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(...原创 2019-06-30 22:07:35 · 169 阅读 · 0 评论 -
从零学 spring cloud第3-4课:数据库基础之MyBatis细节说明
@MapperScan与@Mapper可能你会在很多的文章中都能看到,要在项目的入口加上注解@MapperScan。其实这和我使用@Mapper是一样的,两种方法扫描配置用的是一个地方,只是扫描入口不同。@insert大家要注意的是这个是有返回的值的,它返回的是你插入了多少条数据,并不是返回你插入行的ID,你可以想一下,你可能一下子插入几条记录,那给你返回哪一行的ID好呢?关于枚举关于驼...原创 2019-07-06 12:16:25 · 116 阅读 · 0 评论 -
从零学 spring cloud第3-5课:数据库基础之MyBatis代码生成器
MyBatis前面讲了代码使用注解的方式进行数据库开发,他还有一种是使用XML配置的方式,这里把它和代码生成器一起讲,我们手写脚本,确实有点累。网上有很多的插件可以支持MyBatis方式直接生成代码。这里我讲的是使用Maven的方式来生成代码。...原创 2019-07-07 17:54:05 · 125 阅读 · 0 评论 -
从零学 spring cloud第3-6课:数据库基础之JPA
项目的DEMO代码:https://github.com/heyu52/-spring-cloud什么是JPA JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。 Sun引入新的JPA ORM规范出于两个原因:其一,简化现有Java EE和Jav...原创 2019-07-14 19:52:16 · 158 阅读 · 0 评论 -
从零学 spring cloud第3-7课:数据库基础之JPA复杂用法
项目的DEMO代码:https://github.com/heyu52/-spring-cloud Spring Data JPA 的使用方式和基本查询,常用的增、删、改、查需求 Spring Data JPA 已经实现了。但对于复杂的数据库场景,动态生成方法不能满足,对此 Spring Data JPA 提供了其他的解决方法,下面我们就来看看还有哪些用法。此节课我们使用上节课的代...原创 2019-07-14 21:34:40 · 100 阅读 · 0 评论 -
从零学 spring cloud第3-8课:数据库基础之阿里druid
项目的DEMO代码:https://github.com/heyu52/-spring-cloud 关于数据库连接池,我们前面一直都没有说,其实,在项目运行时,是有输出的,只是看大家是否注意项目输出了。自从springboot2.0以来,springboot默认数据库连接池选择了HikariCP。HikariCP是一个日本词,意思是光,可想而知,就是一个快字。HiKariCP是数据...原创 2019-07-14 22:38:10 · 137 阅读 · 0 评论 -
从零学 spring cloud第4-1课:中间件之基础
接下来的内容,我们讲讲中间件的使用,我们先来介绍一下以下中间件,以下介绍内容全来自百度缓存中间件Redis 一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remo...原创 2019-07-20 18:15:31 · 692 阅读 · 0 评论 -
从零学 spring cloud第4-2课:中间件之Redis
项目的DEMO代码:https://github.com/heyu52/-spring-cloud Redis作为当下最火的缓存服务,在实际的应用中有很多,下面我们就在SpringBoot中看看是如何操作的。Redis 数据类型Redis支持五种数据类型:string(字符串) string 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,...原创 2019-07-21 10:15:19 · 166 阅读 · 0 评论 -
从零学 spring cloud第4-3课:中间件之MemCache
项目的DEMO代码:https://github.com/heyu52/-spring-cloud 以下介绍内容来自百度百科。什么是memcache memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著 ...原创 2019-08-01 00:45:29 · 232 阅读 · 0 评论 -
从零学 spring cloud第4-4课:中间件之Cache 缓存抽象的初步使用
项目的DEMO代码:https://github.com/heyu52/-spring-cloud Springboot中本身就有Cache的功能,我们可以直接使用,如果你没有安装Redis,或者说你的应用场景很小,完全可以使用这种方式,但是缓存的是一个方法的返回结果。你总为能为每个值写一方法呢,所以,场景还是比较单一。 我们还可以联合Redis一起进行使用,这节只讲Cache的简...原创 2019-08-03 12:02:30 · 206 阅读 · 0 评论 -
从零学 spring cloud第4-5课:中间件之Spring Boot 配置 Redis 缓存
项目的DEMO代码:https://github.com/heyu52/-spring-cloud为了更加方便管理缓存,我们还可以直接使用Spring boot 的缓存组合Redis一起使用,数据都放在Redis服务器上。我们直接从零学 spring cloud第3-3课:数据库基础之MyBatis的代码来进行修改。我们先在pom中增加缓存和redis的引用 <d...原创 2019-08-03 14:44:51 · 134 阅读 · 0 评论 -
从零学 spring cloud第5-1课:中间件之消息队列ActiveMQ
项目的DEMO代码:https://github.com/heyu52/-spring-cloud消息队列中间件当下系统中无处不在,并且已经成为了系统中内部通信的核心手段。它有以下特点:松耦合异步消息流量削峰可靠投递广播流量控制最终一致性我使用最多的场景就是异步处理。 目前在业界使用比较多的消息队列有ActiveMQ、RabbitMQ、ZeroMQ、Kafka、...原创 2019-08-17 15:33:10 · 328 阅读 · 0 评论 -
从零学 spring cloud第5-2课:中间件之消息队列RabbitMQ
项目的DEMO代码:https://github.com/heyu52/-spring-cloud RabbitMQ的官网:https://www.rabbitmq.com/ RabbitMQ是一套开源(MPL)的消息队列服务软件,是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能、健壮以...原创 2019-08-18 12:50:58 · 113 阅读 · 0 评论 -
从零学 spring cloud第6-1课:Nosql之MongoDB
项目的DEMO代码:https://github.com/heyu52/-spring-cloud 以下介绍来自百度百科初识MongoDB MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的...原创 2019-08-18 20:48:00 · 115 阅读 · 0 评论 -
从零学 spring cloud第6-2课:Nosql之ElasticSearch
项目的DEMO代码:https://github.com/heyu52/-spring-cloud 以下介绍来自百度百科 ElasticSearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用ElasticSearch的水平伸缩性,能使数据在生产环境变得更有价值。ElasticSearch 的实现原理主要分为...原创 2019-08-18 23:30:46 · 243 阅读 · 0 评论 -
从零学 spring cloud第7-1课:Actuator 监控应用
项目的DEMO代码:https://github.com/heyu52/-spring-cloud Actuator它是springboot提供对应用自身监控,以及对应用系统配置查看等功能。 springboot使用actuator的方式非常简单,只需要在项目中加入依赖spring-boot-starter-actuator。 <dependency> ...原创 2019-08-25 12:37:15 · 132 阅读 · 0 评论 -
从零学 spring cloud第7-2课:Admin 监控应用
项目的DEMO代码:https://github.com/heyu52/-spring-cloud Actuator对于结果都是密密码码,看起来,很费神,为此,一个新的神器又出来了,那就是admin。Spring Boot Admin 是一个管理和监控 Spring Boot 应用程序的开源软件,每个应用都认为是一个客户端,通 过 HTTP 或者使用 Eureka 注册到 admi...原创 2019-08-25 13:27:39 · 168 阅读 · 1 评论 -
从零学 spring cloud第8-1课:关于微服务架构
spring cloud强大之处在于有很多的开源的微服务框架,并且这些框架的组件,很多能互相组装成你想的框架。前几年,最火的就是Eureka。但是自从2018年Netflix(没错,就是美国的那个有名的多媒体公司,漫威宇宙之前的电视剧基本就是他们家的)宣布不在开源以后,很多开发者都转移了阵营,纷纷投向了Google的zookeepr(现由apache维护)、HashiCorp的Consul...原创 2019-08-25 16:58:24 · 112 阅读 · 0 评论 -
从零学 spring cloud第8-2课:使用Eureka做服务发现
项目的DEMO代码:https://github.com/heyu52/-spring-cloud 上一节我们知道,eureka分为服务端和客户端,Eureka只有组件,没有程序,所以,服务端也必须有一个项目来承载做为服务注册中心。但是Eureka与Springboot 有很重的版本的对应关系问题,大家一定要注意。创建Maven空项目点击下一步,完成。创建服务注册中心项目...原创 2019-08-25 17:52:44 · 143 阅读 · 0 评论