首页 > 基础资料 博客日记
resubmit v1.2.0 新特性支持类级别防止重复提交
2025-06-05 17:38:58基础资料围观20次
文章resubmit v1.2.0 新特性支持类级别防止重复提交分享给大家,欢迎收藏Java资料网,专注分享技术知识
前言
resubmit 是一款为 java 设计的渐进式防止重复提交框架。
创作目的
有时候手动加防止重复提交很麻烦,每次手动编写不利于复用。
所以希望从从简到繁实现一个工具,便于平时使用。
特性
-
渐进式实现,可独立 spring 使用
-
基于注解+字节码,配置灵活
-
支持编程式的调用
-
支持注解式,完美整合 spring
-
支持整合 spring-boot
-
支持方法级别、类级别注解
快速开始
maven 引入
<dependency>
<groupId>com.github.houbb</groupId>
<artifactId>resubmit-springboot-starter</artifactId>
<version>1.2.0</version>
</dependency>
测试代码
service 类
@Service
@Resubmit(value = 5000, enable = true)
public class ClassLevelService {
@Resubmit(enable = false)
public void queryInfoNoLimit(final String id) {
System.out.println("queryInfoNoLimit: " + id);
}
public void queryInfoLimit(final String id) {
System.out.println("queryInfoLimit: " + id);
}
}
测试类
@ContextConfiguration(classes = SpringConfig.class)
@RunWith(SpringJUnit4ClassRunner.class)
public class ResubmitSpringClassLevelTest {
@Autowired
private ClassLevelService classLevelService;
@Test(expected = ResubmitException.class)
public void queryInfoLimitTest() {
classLevelService.queryInfoLimit("1");
classLevelService.queryInfoLimit("1");
}
@Test
public void queryInfoNoLimitTest() {
classLevelService.queryInfoNoLimit("1");
classLevelService.queryInfoNoLimit("1");
}
}
如此就可以完成一个类级别支持的防重复提交。
注解
注解 @Resubmit
对应的属性如下,可以在方法或者类上。方法的级别优先于类。
属性 | 说明 | 默认值 |
---|---|---|
value() | 多久内禁止重复提交,单位为毫秒。 | 8000 |
enable() | 是否启用 | true |
拓展阅读
02-java 表单避免重复提交 resubmit 开源项目介绍
开源矩阵
下面是一些从防止重复提交相关,整个系列的开源矩阵规划。
名称 | 介绍 | 状态 |
---|---|---|
resubmit | 防止重复提交核心库 | 已开源 |
rate-limit | 限流核心库 | 已开源 |
cache | 手写渐进式 redis | 已开源 |
lock | 开箱即用的分布式锁 | 已开源 |
common-cache | 通用缓存标准定义 | 已开源 |
redis-config | 兼容各种常见的 redis 配置模式 | 研发中 |
quota-server | 限额限次核心服务 | 待开始 |
quota-admin | 限额限次控台 | 待开始 |
flow-control-server | 流控核心服务 | 待开始 |
flow-control-admin | 流控控台 | 待开始 |
文章来源:https://www.cnblogs.com/houbbBlogs/p/18905430
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- 记一次诡异的线上异常赋值排查:代码没错,结果不对
- hot100之子串
- 剑指offer-1、⼆维数组中的查找
- 从尾到头打印链表
- 秒杀/高并发解决方案+落地实现 (技术栈: SpringBoot+Mysql + Redis +RabbitMQ +MyBatis-Plus +Maven + Linux + Jmeter ) -03
- @ModelAttribute、@RequestBody、@RequestParam、@PathVariable 注解对比
- Java 样板代码库 Lombok 使用详解
- wso2~自定义event-publisher
- 数组数量数据数量大 1000万黑名单用户 一百亿基础用户 查询检索思路
- Spring AI 1.0 正式发布,让 Java 再次伟大!