- 博客(7)
- 收藏
- 关注
原创 Spring中的模板模式
文章目录前言一、模板模式优缺点?二、代码例子前言所谓模板,即定义了一套标准版的骨架,我们需要做的就是在此基础上不断演化新的版本,已达到设计需要。如果要以开发者的编程思维角度去思考这个设计方式,也就是准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。一、模板模式优缺点?优点提高代码复用性。将相同部分的代码放在抽象的超类中。提高拓展性。将不同的代码放入不同的子类中,通过对子类的扩展增加新的行为。实现了反向控制。通过一个父类调用其子类的操
2021-08-03 16:12:24
1832
2
原创 异步编程CompletableFuture的使用
文章目录前言一、CompletableFuture是什么?二、CompletableFuture创建方式三、常用方法1.runAsync()2.supplyAsync()3.thenApply()4.thenAccept()5.thenRun()6.thenCompose()7.thenCombine()8.allOf()9.anyOf()10.handle()前言之前项目中经常需要使用到异步编程,今天我们就来看看Java8中的CompletableFuture是如何进行使用的。使用这种异步编程的好
2021-08-03 16:01:00
777
原创 定时器中ThreadPoolTaskScheduler的使用
文章目录前言一、为什么使用ThreadPoolTaskScheduler?二、使用步骤1.启动类2.编写定时任务配置类3.编写工具类实现定时任务的增删改查。前言最近业务上有个需求是将当天的直播进行录制,这里录制技术我们不做过多研究,主要使用的是ffmpeg,有兴趣的可以下来去研究研究。其中的录制要求有两点。一是能够在录制中进行更改录制时间,二是能够实现周期录制。个人对上述的要求在业务上采用了定时器来进行实现。主要使用的是ThreadPoolTaskScheduler。一、为什么使用ThreadPo
2021-07-30 17:46:18
6537
1
原创 java中ForkJoinPool的使用
文章目录前言一、ForkJoinPool是什么?二、如何使用三、使用案例1.提交有返回值的任务2.提交无返回值的任务前言我们在开发中经常会涉及到线程的使用,特别是在一些高并发的场景中,如果只是以单线程去执行就会特别耗费时间。今天就来认识一下在开发中可能会使用到的ForkJoinPool类,作者本人也是最近看线程池代码时才发现了一个ForkJoinPool类。一、ForkJoinPool是什么?ForkJoinPool又叫分而治之,通俗来讲就是帮我们把一个任务分成许多小任务给不同的线程执行,然后通过
2021-07-30 16:25:17
3284
原创 Spring中的观察者模式
今天来聊聊Spring中的观察者模式前言一、观察者设计模式中涉及到的角色二、使用设计模式的优缺点优点缺点三、示例代码四、Spring中的观察者设计模式前言今天来看一看什么是观察者模式,在现实生活中,观察者模式处处可见,就以微信公众号来说吧,每当一个用户订阅了一个公众号,那么就会收到公众号发来的消息,这里公众号就是被观察的对象,用户就是观察者。而在设计模式中,被观察者被称之为主题。一、观察者设计模式中涉及到的角色在观察者设计模式中,一般有四个角色:抽象主题角色(Subject)具体主题角
2021-07-29 14:25:47
3107
1
原创 今天来认识一个IP地址解析库(ip2region)
文章目录一、问题提出二、使用步骤1.引入库,码云地址:gitee: https://gitee.com/lionsoul/ip2region2.构建返回实体类对象3.获取IP以及详细地址的工具类3.代码测试总结一、问题提出不知道各位有没有遇到过这样一个业务场景,当你的账号在其他城市登陆时会收到异地登陆的短信提示,最近个人就在做类似这样的业务,这点就有点像QQ与微信的异地登陆提示。话不多说了,开始之前我们认识一下一个地址解析库(ip2region),此库能够将IP地址解析成一个准确的地址信息,我们要做的
2021-07-29 11:05:18
1473
原创 Spring中的责任链模式
今天来聊聊Spring中的责任链模式什么是责任链模式责任链角色示例代码实现责任链模式的优缺点什么是责任链模式今天我们来看看设计模式中责任链模式是如何使用的。首先看看它的定义:使多个对象都有机会处理同一个请求,从而避免请求的发送者和接收者之间具有高度的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。一句话总结就是,以一定的流程处理某个对象,直至这个流程链被遍历完责任链角色主要涉及到的角色主要包括:抽象处理者角色:处理请求的抽象类,定义了处理请求的抽象方法;(抽象类
2021-07-16 16:19:46
2042
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人