![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
springboot
文章平均质量分 69
Allen716
这个作者很懒,什么都没留下…
展开
-
springboot使用@Async CompleteableFuture完成多个任务的异步回调
简介最近对代码进行优化,遇到一个场景:一个方法对多个RPC同时发起调用,每个RPC的响应事件在200ms左右而且是不受控制,有同事使用异步进行了实现,参考网上查的一些资料,大部分是如下这种描述资料地址回调的核心代码如下// 三个任务都调用完成,退出循环等待 while (!task1.isDone() || !task2.isDone() || !task3.isDone()) { sleep(1000); }这种实现不够优雅,...原创 2020-12-16 11:32:38 · 4267 阅读 · 0 评论 -
springboot 统一异常处理
什么是统一异常处理Spring在3.2版本增加了一个注解@ControllerAdvice,可以与@ExceptionHandler、@InitBinder、@ModelAttribute 等注解注解配套使用,对于这几个注解的作用,这里不做过多赘述,若有不了解的,可以参考Spring3.2新注解@ControllerAdvice,先大概有个了解。不过跟异常处理相关的只有注解@ExceptionHandler,从字面上看,就是 异常处理器 的意思,其实际作用也是:若在某个Controller类定义一个转载 2020-06-05 10:15:04 · 5568 阅读 · 1 评论 -
springcloud 微服务模式下的系统上下文全链路传递
原创 2020-05-30 14:13:50 · 1230 阅读 · 0 评论 -
配置中心Apollo存储加密字段
一些比较重要的配置信息,比如密码之类的敏感配置,我们希望将配置加密存储,保证安全性。Apollo框架本身没有提供数据加密的功能,如果想要实现数据加密的功能有两种方式,第一种是改Apollo的源码,增加加解密的逻辑,第二种比较简单,基于第三方的框架来对数据进行解密。jasypt-spring-boot是一个基于Spring Boot开发的框架,可以将properties中加密的内容自动解密,在A...原创 2020-03-12 19:14:01 · 3571 阅读 · 0 评论 -
springboot 参数验证 validation
1、综述springboot提供了强大的基于注解的、开箱即用的验证功能,这种基于bean validation的实现和 hibernate validator类似2、依赖创建springboot项目,包含以下依赖<dependency> <groupId>org.springframework.boot</groupId> <art...原创 2019-11-11 14:41:22 · 2567 阅读 · 0 评论 -
springboot 配置文件加密方案
springboot的config文件通常如下:spring.data.jdbc.url=jdbc:mysql://127.0.0.1:3305/test_dbspring.data.jdbc.username=rootspring.data.jdbc.password=123456通常会将敏感信息加密,一般的解决方案会在config的bean中进行逻辑解密代码的处理,但是不够优美,...原创 2019-11-06 19:42:58 · 2769 阅读 · 0 评论 -
服务发现比较:Consul vs Zookeeper vs Etcd vs Eureka
服务发现比较:Consul vs Zookeeper vs Etcd vs Eureka这里就平时经常用到的服务发现的产品进行下特性的对比,首先看下结论:Feature Consul zookeeper etcd euerka 服务健康检查 服务状态,内存,硬盘等 (弱)长连接,keepalive 连接心跳 可配支持 多数据中心 ...原创 2019-01-27 16:31:36 · 224 阅读 · 0 评论 -
springboot logback/log4j配置 log输出到ELK
logstash配置文件如下# Sample Logstash configuration for creating a simple# Beats -> Logstash -> Elasticsearch pipeline.input { tcp { mode => "server" host => "127.0.0.1" port...原创 2019-01-08 18:30:04 · 1546 阅读 · 0 评论 -
springboot 使用webflux响应式开发教程(二)
本篇是对springboot 使用webflux响应式开发教程(一)的进一步学习。 分三个部分: 1、数据库操作 2、webservice 3、websocket 创建项目,artifactId = trading-service,groupId=io.spring.workshop。选择Reactive Web , Devtools, Thymeleaf , Reactive Mong...原创 2018-05-16 16:12:05 · 4326 阅读 · 0 评论 -
springboot 使用webflux响应式开发教程(一)
什么是webFlux左侧是传统的基于Servlet的Spring Web MVC框架,右侧是5.0版本新引入的基于Reactive Streams的Spring WebFlux框架,从上到下依次是Router Functions,WebFlux,Reactive Streams三个新组件。Router Functions: 对标@Controller,@RequestMapping等标准...原创 2018-05-15 15:11:26 · 24640 阅读 · 2 评论 -
正确、安全地停止SpringBoot应用服务
引言Spring Boot,作为Spring框架对“约定优先于配置(Convention Over Configuration)”理念的最佳实践的产物,它能帮助我们很快捷的创建出独立运行、产品级别的基于Spring框架的应用,大部分Spring Boot应用只需要非常少的配置就可以快速运行起来,是一个与微服务(MicroServices)相当契合的微框架。网络上关于Spring Boot的Q转载 2018-01-19 21:59:05 · 918 阅读 · 0 评论