![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring全家桶
xxxcyzyy
这个作者很懒,什么都没留下…
展开
-
Spring Cloud Feign设计原理
什么是Feign?Feign 的英文表意为“假装,伪装,变形”, 是一个http请求调用的轻量级框架,可以以Java接口注解的方式调用Http请求,而不用像Java中通过封装HTTP请求报文的方式直接调用。Feign通过处理注解,将请求模板化,当实际调用的时候,传入参数,根据参数再应用到请求上,进而转化成真正的请求,这种请求相对而言比较直观。Feign被广泛应用在Spring Cloud 的...原创 2020-03-28 10:35:34 · 475 阅读 · 0 评论 -
Consul服务注册与服务发现机制
1、什么是服务注册中心?顾名思义,假设你有一个分布式系统,里面包含了多个服务,部署在不同的机器上,然后这些不同机器上的服务之间要互相调用。举个现实点的例子吧,比如电商系统里的订单服务需要调用库存服务,如下图所示。现在的问题在于,订单服务在192.168.31.154这台机器上,库存服务在192.137.1.33这台机器上。现在订单服务是想要调用库存服务,但是他并不知道库存服务在...转载 2020-03-09 23:12:58 · 1495 阅读 · 2 评论 -
微服务:注册中心ZooKeeper、Eureka、Consul 、Nacos对比
https://blog.csdn.net/fly910905/article/details/100023415服务注册中心解决方案设计或者选型一个服务注册中心,首先要考虑的就是服务注册与发现机制。纵观当下各种主流的服务注册中心解决方案,大致可归为三类:应用内:直接集成到应用中,依赖于应用自身完成服务的注册与发现,最典型的是Netflix提供的Eureka应用外:把应用当成黑盒,通...转载 2020-03-09 23:02:02 · 324 阅读 · 0 评论 -
微信小程序登录逻辑梳理
https://www.jianshu.com/p/d9996cafdb31官方文档文档相关地址:用户登录获取用户数据用户数据的签名验证和加解密登录时序图.png微信两个api所拿到的信息:login和getUserInfo返回的信息.png注册/登录小程序端:通过上面wx.login和wx.getUserInfo两个api拿到相应的信息,并通过上...转载 2020-01-07 00:08:26 · 797 阅读 · 0 评论 -
OAuth2实现单点登录SSO
https://www.cnblogs.com/cjsblog/p/10548022.html1. 前言技术这东西吧,看别人写的好像很简单似的,到自己去写的时候就各种问题,“一看就会,一做就错”。网上关于实现SSO的文章一大堆,但是当你真的照着写的时候就会发现根本不是那么回事儿,简直让人抓狂,尤其是对于我这样的菜鸟。几经曲折,终于搞定了,决定记录下来,以便后续查看。先来看一下效果...转载 2020-01-06 23:26:37 · 196 阅读 · 0 评论 -
SpringCloud确保服务只能通过gateway转发访问,禁止直接调用接口访问
https://blog.csdn.net/Hpsyche/article/details/102926010前言在微服务体系架构中,网关承担着重要的角色,在网关中可以添加各种过滤器,过滤请求,保证请求参数安全,限流等等。如果请求绕过了网关,那就等于绕过了重重关卡,直捣黄龙,所以,在分布式架构中,我们需要有一定的防范,来确保各个服务相互之间安全调用。正文思路1、在网关中给所有请...转载 2020-01-05 21:40:46 · 6685 阅读 · 1 评论 -
Spring gateway配置Spring Security实现统一权限验证与授权
https://www.cnblogs.com/wgslucky/p/11962884.html在使用Spring Cloud 进行微服务,分布式开发时,网关是请求的第一入口,所以一般把客户端请求的权限验证统一放在网关进行认证与鉴权。因为Spring Cloud Gateway使用是基于WebFlux与Netty开发的,所以与传统的Servlet方式不同。而且网关一般不会直接请求数据库,不提供...转载 2020-01-05 21:32:13 · 4594 阅读 · 1 评论 -
spring security 在 spring webflux 中的使用
https://blog.csdn.net/joker_2007/article/details/82736183pring5增加了reactive web模块,相应的在spring security中也增加了[webflux-web-security]模块,相对于spring security 在配置和使用方面有略微的差异,下面主要说明简单的配置和自定义用户信息的配置。import...原创 2020-01-05 20:15:56 · 1124 阅读 · 1 评论 -
Mono入门应用
https://blog.csdn.net/songhaifengshuaige/article/details/79248343前言Flux 和 Mono 是 Reactor 中的两个基本概念。Flux 表示的是包含 0 到 N 个元素的异步序列。在该序列中可以包含三种不同类型的消息通知:正常的包含元素的消息、序列结束的消息和序列出错的消息。当消息通知产生时,订阅者中对应的方法onNext...转载 2020-01-05 11:56:50 · 4388 阅读 · 0 评论 -
spring AOP之proceedingjoinpoint和joinpoint区别(获取各对象备忘)、动态代理机制及获取原理代理对象、获取Mybatis Mapper接口原始对象
import org.aspectj.lang.reflect.SourceLocation; public interface JoinPoint { String toString(); //连接点所在位置的相关信息 String toShortString(); //连接点所在位置的简短相关信息 String toLongStri...转载 2019-11-07 13:35:49 · 541 阅读 · 0 评论 -
spirng eureka client启动时报错:Completed shut down of DiscoveryClient
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency>在对应的工程加入如上web依赖即可。...原创 2019-11-06 22:09:40 · 141 阅读 · 0 评论 -
使用WireMock作为REST服务器
使用WireMock作为REST服务器下载下载http://wiremock.org/docs/running-standalone/原创 2019-11-01 00:19:49 · 162 阅读 · 0 评论 -
1012---SpEL
•Spring 表达式语言(简称SpEL):是一个支持运行时查询和操作对象图的强大的表达式语言。•语法类似于EL:SpEL使用#{…} 作为定界符,所有在大框号中的字符都将被认为是SpEL•SpEL为 bean的属性进行动态赋值提供了便利•通过 SpEL可以实现: –通过 bean 的 id 对bean 进行引用 –调用方法以及引用对象中的属性 –转载 2015-12-01 01:15:37 · 442 阅读 · 0 评论 -
10025---Spring Batch批处理框架初探
https://blog.csdn.net/BuquTianya/article/details/52567165关于spring batchspring batch就是一个轻量级的批处理框架,他的轻量级是相对于MapReduce、Spark之类的集群批处理架构来说的。虽然spring batch支持机器集群,但是多用的是单机的多线程并行处理。大家都知道MapReduce适合超大型数据量的批量处理...转载 2018-05-31 10:51:18 · 2007 阅读 · 0 评论 -
CentOS7安装RabbitMQ
记录下大体步骤和要点1.安装erlang以及环境变量设置2.安装RabbitMQ以及环境变量设置3.开通防火墙端口号 5672和156724.安装管理页面 sudo rabbitmq-plugins enable rabbitmq_management5.允许远程访问管理页面步骤1,2如果用docker或许更便捷,没有试过。...原创 2018-10-15 18:51:31 · 225 阅读 · 0 评论 -
【RabbitMQ】---Rabbitmq可靠确认模式的java封装及示例
https://www.jianshu.com/p/4112d78a8753https://github.com/littlersmall/rabbitmq-access转载 2018-10-16 16:49:56 · 579 阅读 · 0 评论 -
SpringBoot中使用mybatis-generator自动生产
https://www.cnblogs.com/hongdada/p/7583625.html步骤:1.在pom.xml中添加插件配置<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybati...转载 2018-12-05 15:31:28 · 397 阅读 · 0 评论 -
SpringBoot - 配置文件加载位置与优先级
https://blog.csdn.net/j080624/article/details/80508606https://blog.csdn.net/hhb910/article/details/79709913【1】项目内部配置文件spring boot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot...转载 2019-02-10 18:49:25 · 156 阅读 · 0 评论 -
spring boot 指定启动环境---Spring Boot中application.yml与bootstrap.yml的区别
https://blog.csdn.net/clypm/article/details/78769660spring boot中,可以通过在bootstrap.yml配置文件中,配置多个不同的profile,实现在不同的环境(比如开发、测试和生产环境)使用不同的配置变量。Spring Boot中application.yml与bootstrap.yml的区别Bootstrap.yml(...转载 2019-02-10 18:52:24 · 12066 阅读 · 0 评论 -
Spring Boot 入门 - 进阶篇(8)- 应用监控(Actuator)
https://rensanning.iteye.com/blog/2363526作为Spring Boot的另外一大亮点,就是actuator模块,它是Spring Boot Starter中的一个特殊模块,用于集中采集应用的各项指标信息。(1)开启监控pom.xmlXml代码<dependency> <groupId>org.sp...转载 2019-03-05 22:08:16 · 274 阅读 · 0 评论 -
Spring Boot系列——7步集成RabbitMQ
https://www.cnblogs.com/bigdataZJ/p/springboot-rabbitmq.htmlRabbitMQ是一种我们经常使用的消息中间件,通过RabbitMQ可以帮助我们实现异步、削峰的目的。今天这篇,我们来看看Spring Boot是如何集成RabbitMQ,发送消息和消费消息的。同时我们介绍下死信队列。集成RabbitMQ集成RabbitMQ只需要...转载 2019-03-29 09:30:41 · 228 阅读 · 0 评论 -
Spring Cloud 微服务五:Spring cloud gateway限流
https://www.cnblogs.com/csts/p/10286378.html前言:在互联网应用中,特别是电商,高并发的场景非常多,比如:秒杀、抢购、双11等,在开始时间点会使流量爆发式地涌入,如果对网络流量不加控制很有可能造成后台实例资源耗尽。限流是指通过指定的策略削减流量,使到达后台实例的请求在合理范围内。本章将介绍spring cloud gateway如何实现限流。前情回...转载 2019-04-09 17:31:43 · 141 阅读 · 0 评论 -
SpringBoot基础篇(五)过滤器OncePerRequestFilter
https://blog.csdn.net/u013089490/article/details/84878319转载 2019-09-05 16:03:09 · 2101 阅读 · 0 评论 -
SpringBoot:关于MultipartFile和File不得不说的那些事
https://www.jianshu.com/p/520b1e292c52最近的项目中需要实现一个上传文件并解析的功能,本来觉得难点在于解析里面10w+的用户数据,但是万万没想到问题出在了一个开始的接收参数上面。 在项目中我们使用MultipartFile来接收postman传过来的文件,然而后面又需要将文件写入InputStreamReader,进而逐行读取文件内容并写入list...转载 2019-09-25 15:46:13 · 7500 阅读 · 0 评论 -
SpringBoot2.0 使用遇到的坑
1.不能加载jdbc驱动现象:启动报错。原因:默认引用的驱动的版本号下载不了。解决方式:去mvnrepository上找一个有效的版本。原创 2018-06-03 00:26:42 · 1068 阅读 · 0 评论 -
10023---Spring AOP和事务的相关陷阱
https://www.cnblogs.com/lanhzbupt/p/6346680.htmllanhzSpring AOP和事务的相关陷阱1、前言2、嵌套方法拦截失效2.1 问题场景2.2 解决方案2.3 原因分析2.3.1 原理2.3.2 源代码分析3、Spring事务在多线程环境下失效3.1 问题场景3.2 解决方案3.3 原因分析4、总结1、前言Spring AOP在使用过程中需要注意一...转载 2018-04-27 11:09:52 · 272 阅读 · 0 评论 -
10013---69道Spring面试题和答案
原文目录Spring 概述依赖注入Spring beansSpring注解Spring数据访问Spring面向切面编程(AOP)Spring MVCSpring 概述1. 什么是spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Jav转载 2016-08-15 15:17:57 · 268 阅读 · 0 评论 -
10014---Spring 定时任务之 @Scheduled cron表达式
原文一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素。按顺序依次为秒(0~59)分钟(0~59)小时(0~23)天(月)(0~31,但是你需要考虑你月的天数)月(0~11)天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)7.年份(1970-2099)--转载 2016-05-26 23:47:34 · 382 阅读 · 0 评论 -
10011---Spring Security(01)——初体验
原文首先我们为Spring Security专门建立一个Spring的配置文件,该文件就专门用来作为Spring Security的配置。使用Spring Security我们需要引入Spring Security的NameSpace。<beans xmlns="http://www.springframework.org/schema/beans" xmlns:security转载 2016-03-18 17:05:26 · 281 阅读 · 0 评论 -
10011---使用外部属性文件
-•在配置文件里配置 Bean 时,有时需要在 Bean 的配置里混入系统部署的细节信息(例如:文件路径, 数据源配置信息等). 而这些部署细节实际上需要和Bean配置相分离•Spring 提供了一个 PropertyPlaceholderConfigurer的BeanFactory后置处理器,这个处理器允许用户将Bean 配置的部分内容外移到转载 2015-11-29 01:22:43 · 257 阅读 · 0 评论 -
10010---bean 的作用域:singleton;prototype;WEB 环境作用域
Bean 的作用域•在 Spring 中, 可以在 元素的 scope属性里设置 Bean的作用域. •默认情况下, Spring只为每个在 IOC 容器里声明的 Bean 创建唯一一个实例,整个 IOC 容器范围内都能共享该实例: 所有后续的 getBean()调用和 Bean 引用都将返回这个唯一的Bean 实例.该作用域被称为sin转载 2015-11-29 01:19:16 · 292 阅读 · 0 评论 -
10008---XML 配置里的 Bean 自动装配
•Spring IOC 容器可以自动装配Bean. 需要做的仅仅是在 的 autowire属性里指定自动装配的模式•byType(根据类型自动装配):若 IOC 容器中有多个与目标Bean 类型一致的 Bean. 在这种情况下, Spring将无法判定哪个 Bean 最合适该属性, 所以不能执行自动装配.•byName(根据名称自动装配):必须将目标 Bea转载 2015-11-29 01:02:02 · 241 阅读 · 0 评论 -
10007---注入属性值细节
字面值字面值:可用字符串表示的值,可以通过 元素标签或 value 属性进行注入。基本数据类型及其封装类、String 等类型都可以采取字面值注入的方式若字面值中包含特殊字符,可以使用 value]]>把字面值包裹起来。转载 2015-11-28 01:19:07 · 403 阅读 · 0 评论 -
10009---bean 之间的关系:继承;依赖
继承 Bean配置•Spring 允许继承 bean 的配置,被继承的 bean 称为父 bean.继承这个父 Bean 的 Bean 称为子Bean•子 Bean 从父Bean 中继承配置,包括 Bean 的属性配置•子 Bean 也可以覆盖从父Bean 继承过来的配置•父 Bean 可以作为配置模板,也可以作为 Bean 实例.转载 2015-11-29 01:12:31 · 285 阅读 · 0 评论 -
10006---依赖注入的方式
•Spring支持 3种依赖注入的方式 –属性注入 –构造器注入 –工厂方法注入(很少使用,不推荐)–属性注入--属性注入即通过 setter 方法注入Bean 的属性值或依赖的对象转载 2015-07-10 11:33:28 · 295 阅读 · 0 评论 -
10014---Spring中如何配置Hibernate事务
原文为了保证数据的一致性,在编程的时候往往需要引入事务这个概念。事务有4个特性:原子性、一致性、隔离性、持久性。 事务的种类有两种:编程式事务和声明式事务。编程式事务就是将事务处理放在程序中,而声明式事务则是通过配置文件或者注解进行操作。 在Spring中有声明式事务的概念,通过和Hibernate类似框架的集成,可以很好的完成声明式事务转载 2016-08-18 17:06:24 · 215 阅读 · 0 评论 -
10001---Spring--概述与Hello World
•Spring 是一个开源框架.•Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能.•Spring 是一个 IOC(DI) 和 AOP 容器框架. 具体描述 Spring:轻量级:Spring 是非侵入性的 - 基于 Spring 开发的应用中的对象可以不依赖于 Spring 的 API依转载 2015-07-10 00:48:16 · 336 阅读 · 0 评论 -
10002--Spring 中的 Bean 配置--IOC 和 DI
•IOC & DI概述配置bean –配置形式:基于XML文件的方式;基于注解的方式–Bean的配置方式:通过全类名(反射)、通过工厂方法(静态工厂方法&实例工厂方法)、FactoryBean–IOC容器 BeanFactory&ApplicationContext概述–依赖注入的方式:属性注入;构造器注入–注转载 2015-07-10 01:06:54 · 376 阅读 · 0 评论 -
10020---SpringBoot2.0 jpa多数据源配置
https://blog.csdn.net/tianyaleixiaowu/article/details/78905149随着Springboot升级到2.0,原来1.5.x的Jpa多数据源配置不能用了。现在总结一下Springboot2.0的jpa多数据源配置连接池还是用druid,但是不能用druid的starter了,譬如在1.5.x时用的是[html] view plain copy&l...转载 2018-04-18 15:53:47 · 1934 阅读 · 3 评论 -
10022---Spring<util>标签的使用
Spring的util标签,有以下几种类型。<util:list><util:set><util:map><util:properties><util:constant>此标签配合<util:property-path>一起使用顾名思义,大家应该能大体猜出它们的用途,下面我们再接着看一下它们的用法。1.首先要引入util命名空...原创 2018-04-05 10:01:00 · 943 阅读 · 0 评论