spring核心技术
文章平均质量分 77
讲述spring开发和使用过程中需要注意的核心知识点和遇到的那些坑
jieniyimiao
真的英雄,在于,以脆弱的凡人之躯,而具有神性的不可战胜。
展开
-
JAVA如何优雅的重试?@Retryable(spring的重试机制)
楔子在应用程序中,由于一些网络等不可预知的问题,我们的程序或者接口会失败,比如调用一个第三方的接口获取数据失败了,这时就需要重试机制,比如延时3S后重试、间隔不断增加重试等,而这些机制完全不需要你自己去实现,全部交给Spring Retry吧。使用1.在pom文件中添加相应的依赖<dependency> <groupId>org.springframewor...原创 2020-04-25 11:33:36 · 21049 阅读 · 3 评论 -
spring boot 创建no-web应用
1. 问题不是所有的Spring应用都必须是web应用(或web服务)。如果你想在main方法中执行一些代码,但需要启动一个Spring应用去设置需要的底层设施,那使用Spring Boot的SpringApplication特性可以很容易实现。spring boot绝大多数用于web应用,但是有时我们只想用spring boot启动容器、使用它的一些特性,单并不想启动一个web服务,如何做?...原创 2019-06-03 20:01:02 · 1110 阅读 · 0 评论 -
获取所有classpath指定包下类的所有子类
1.问题开发过程中,有时需要找到所有classpath下,特定包下某个类的所有子类,如何做到?2. 实现比较常见的解决方案是自己遍历目录,查找所有.class文件。下面这个方法使用spring工具类实现,简化过程,不再需要自己遍历目录 /** * 获取在指定包下某个class的所有非抽象子类 * * @param parentClass 父类 ...原创 2019-06-03 20:31:08 · 1876 阅读 · 0 评论 -
Restfull服务异常统一处理
1.前言在构建一个服务时,总会抛出各种异常,这时我们就需要进行统一的异常处理,这样就能保证对外有一致的返回。而且可以避免通过返回值判断函数调用结果这种繁琐的代码。2.Controller层方法,进行统一异常处理提供两种不同的方案,如下:方案1:使用 @ControllerAdvice (或@RestControllerAdvice), @ExceptionHandler注解实现;方案...原创 2019-04-10 20:19:43 · 2043 阅读 · 0 评论 -
Spring Boot 对多线程支持-提高程序执行效率
1.楔子在我们的系统中,经常会处理一些耗时任务,自然而然的会想到使用多线程,JDK给我们提供了非常方便的操作线程的API,为什么还要使用Spring来实现多线程呢?1.使用Spring比使用JDK原生的并发API更简单。(一个注解@Async就搞定)2.我们的应用环境一般都会集成Spring,我们的Bean也都交给Spring来进行管理,那么使用Spring来实现多线程更加简单,更加优雅。...原创 2019-04-17 22:05:00 · 41025 阅读 · 11 评论