
java
文章平均质量分 56
sgvshy
这个作者很懒,什么都没留下…
展开
-
maven 编译jks等证书文件后,证书内容被破坏
问题最近有项目要在jar包内使用jks证书文件,编译运行后,如下错误java.io.IOException: Invalid keystore format at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:650) at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:55) at java.security.KeySto.原创 2022-01-23 11:57:14 · 1129 阅读 · 1 评论 -
Transaction rolled back because it has been marked as rollback-only
Transaction rolled back because it has been marked as rollback-only记一次事务嵌套引发的问题示例上图是我们在实际工作中经常会遇到的场景,业务的处理流程需要我们对两个事务嵌套处理。这种情况下,事务A 和 事务B 使用同一个事务,无论哪个事务发生异常,整个事务都会回滚。有时会遇到这样的场景,我们希望事务B的异常不影响事务A的正常执行。怎么办呢,我们的第一想法就是对事务B增加异常的try catch处理,将异常捕获,这样事务A就不会有异原创 2020-12-25 16:06:04 · 1612 阅读 · 0 评论 -
UndeclaredThrowableException
UndeclaredThrowableException最近在项目中遇到了 java.lang.reflect.UndeclaredThrowableException 的异常,就查了下,这里做个简单总结UndeclaredThrowableException产生的原因从字面上看这是一个未声明异常的异常,单从字面意思看我们会陷入一个误区,程序抛出一个未声明的异常,那应该就是非受检异常了,比如RuntimeException、Error。找到这个类,我们发现它继承了 RuntimeException原创 2020-10-19 16:10:34 · 6333 阅读 · 0 评论 -
Spring熔断@CircuitBreaker
@CircuitBreaker 是Spring Retry 包中提供的熔断相关的功能。它是在 @Retryable 的基础上实现的。所以大家在看这篇文章之前可以先回顾下之前我们分析的 spring Retry 中关于 @Retryable 的相关功能:Spring Retry的使用及原理对 @Retryable 的原理了解之后,我们一起来学习下 @CircuitBreaker。@CircuitBreaker 用法首先,我们看下 @CircuitBreaker 的简单用法这样,我们就可以实现一原创 2020-05-31 22:04:52 · 3740 阅读 · 0 评论 -
Spring Retry 的使用和原理
Spring Retry提供了自动重新调用失败的操作的功能。这在错误可能是暂时性的(例如瞬时网络故障)的情况下很有用。Spring Retry提供对流程和基于策略的行为的声明式控制,易于扩展和自定义。接下来,本文将带大家了解 Spring Retry 的使用方法和部分源码解析引入spring-retry 相关包使用spring-retry ,我们只需引入spring-retry 和 aop 的包即可,以 maven 为例:<dependency> <groupId>or原创 2020-05-18 19:49:29 · 6725 阅读 · 2 评论 -
高并发之 CountDownLatch
概念CountDownLatch是一个通用的同步工具,CountDownLatch允许一个或多个线程在其他线程执行操作完成前等待。用法CountDownLatch需要初始化一个计数器,调用await()方法使线程阻塞,调用countDown()方法让计数器减一,当计数器减为零时,所有等待的线程释放,并且后续await()的线程立即执行。场景使用CountDownLatch主要有两个场景主线程阻塞直到子线程全部执行完毕。比如,我和女朋友一起去吃麻辣烫,厨师需要等我和女朋友全部点完配菜之后才可以原创 2020-05-16 17:50:43 · 472 阅读 · 0 评论