Spring Retry
工作中,经常遇到需要重试的场景,最简单的方式可以用try...catch...加while循环来实现。那么,有没有统一的、优雅一点儿的处理方式呢?有的,Spring Retry就可以帮我们搞定重试问题。 关于重试,我们可以关注以下以下几个方面: 什么情况下去触发重试机制 重试多少次,重试的时间间隔 ... »
工作中,经常遇到需要重试的场景,最简单的方式可以用try...catch...加while循环来实现。那么,有没有统一的、优雅一点儿的处理方式呢?有的,Spring Retry就可以帮我们搞定重试问题。 关于重试,我们可以关注以下以下几个方面: 什么情况下去触发重试机制 重试多少次,重试的时间间隔 ... »
Sun公司提供了JavaMail用来实现邮件发送,但是配置烦琐,Spring中提供了JavaMailSender用来简化邮件配置,Spring Boot则提供了MailSenderAutoConfiguration对邮件的发送做了进一步简化。 v准备工作 开通POP3/SMTP服务或者IMAP/SM ... »
Spring中的BeanFactoryPostProcessor是在Spring容器实例化Bean之后,初始化之前执行的一个扩展机制。它允许开发者在Bean的实例化和初始化之前对BeanDefinition进行修改和处理,从而对Bean的创建过程进行干预和定制化。 BeanFactoryPostPr ... »
基于现代服务的云原生十二要素理论,我们在采用容器化部署时,要保证同一个镜像可以满足不同环境的部署要求,而不是不同环境打包不同的镜像。本文档主要介绍一种基于spring框架的满足不同环境配置的编译打包方案,满足同一个镜像可以在环境分组下通过启动项配置实现不同环境的部署。 ... »
应用被安全工具,扫描出漏洞信息 【MSS】SpringBoot Actuator敏感接口未授权访问漏洞(Actuator)事件发现通告: 发现时间:2023-11-25 19:47:17 攻击时间:2023-11-25 18:56:44 事件/告警类型:非授权访问/权限绕过 告警设备:APT 攻击I ... »
转载自 : www.javaman.cn 1、编写工具类生成4位随机数 该工具类主要生成从0-9,a-z,A-Z范围内产生的4位随机数 /** * 产生4位随机字符串 */ public static String getCheckCode() { String base = "0123456789 ... »
公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 目的 Spring Cloud 线上微服务实例都是2个起步,如果出问题后,在没有ELK等日志分析平台,如何确定调用到了目标服务的那个实例,以此来排查问题 效果 可以看到服务有几个实例是上线,并且最终调用了那个实例 考虑到S ... »
前言 玩SpringCloud之前最好懂SpringBoot,别搞撑死骆驼的事。Servlet整一下变成Spring;SSM封装、加入东西就变为SpringBoot;SpringBoot再封装、加入东西就变为SpringCloud 架构的演进 单体应用架构 单体架构:表示层、业务逻辑层和数据访问层即 ... »
就在今天凌晨,Spring Boot 3.2正式发布了!该版本是在Java 21正式发布之后的重要支持版本,所以在该版本中包含大量对Java 21支持的优化。 下面,我们分别通过Spring官方发布的博文和Josh Long长达80+分钟的介绍视频,一起认识一下Spring Boot 3.2最新版本 ... »
通过Spring MVC可以很方便地实现Restful风格的请求支持。Restful风格的请求是一种基于HTTP协议的轻量级的Web服务架构风格,它通过HTTP的GET、POST、PUT、DELETE等方法来实现对资源的增删改查操作。在Spring MVC中,我们可以使用注解来定义Restful风格 ... »
ElasticSearch 简称 es,是一个开源的高扩展的分布式全文检索引擎,目前最新版本已经到了8.11.x了。 它可以近乎实时的存储、检索数据,且其扩展性很好,是企业级应用中较为常见的检索技术。 下面主要记录学习 ElasticSearch7.x 的一些基本结构、在Spring Boot ... ... »
项目使用了SpringBoot3 ,因此 SpringSecurity也相应进行了升级 版本由5.4.5升级到了6.1.5 写法上发生了很大的变化,最显著的变化之一就是对 WebSecurityConfigurerAdapter 类的使用方式的改变。这个类在 Spring Security 中被广泛 ... »
背景 组内人不少,今年陆陆续续研发了不少系统,一般都会包括一个后台管理系统,现在问题是,每个管理系统都有RBAC那一套用户权限体系,实在是有点浪费人力,于是今年我们搞了个统一管理各个应用系统的RBAC的系统,叫做应用权限中心,大致就是: 各个应用在我们系统注册,并录入应用支持的各类权限(如菜单权限、 ... »
线上的业务 jar 包基本上普遍比较庞大,动不动一个 jar 包几百 M,启动时间在10分钟级,拖慢了我们在故障时快速扩容的响应、以及本地开发调试效率。于是做了一些分析,看看 Spring 程序启动慢到底慢在哪里,如何去优化,目前的效果是大部分大型应用启动时间可以缩短 70%~80%。 ... »
准备后端接口 package com.ybchen.controller; import com.ybchen.utils.JsonData; import lombok.Data; import org.springframework.web.bind.annotation.GetMapping; ... »
公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 在之前的几个教程中,我们学了: 使用 RestTemplate 的 Spring Boot 微服务通信示例 使用 WebClient 的 Spring Boot 微服务通信示例 使用 Spring Cloud Open F ... »
1. 简介 1.1 JWT JWT,即JSON Web Token,是一种用于在网络上传递声明的开放标准(RFC 7519)。JWT 可以在用户和服务器之间传递安全可靠的信息,通常用于身份验证和信息交换。 声明(Claims): JWT 包含一组称为声明的信息,声明描述了一些数据。有三种类型的声明: ... »
学习视频:【孙哥说Spring5:从设计模式到基本应用到应用级底层分析,一次深入浅出的Spring全探索。学不会Spring?只因你未遇见孙哥】 第二章、第一个Spring程序 1.软件版本 1.JDK1.8+ 2.Maven3.5+ 3.IDEA2018+ 4.SpringFramework 5. ... »
公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 前言 在前几个教程中我们已经看到: 使用 RestTemplate 的 Spring Boot 微服务通信示例 使用 WebClient 的 Spring Boot 微服务通信示例 在本教程中,我们将学习如何使用 Spri ... »
本文由葡萄城技术团队发布。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 前言 本文小编将详细解析Spring Boot框架,并通过代码举例说明每个层的作用。我们将深入探讨Spring Boot的整体架构,包括展示层、业务逻辑层和数据访问层。通过这些例子, ... »