-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
11 lines (11 loc) · 10.6 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE html><html lang="zh-CN"><head><meta charset="utf-8"><meta name="X-UA-Compatible" content="IE=edge"><meta name="author" content="weiyu luo,[email protected]"><title>immadolf</title><meta name="description" content="A Blog Powered By Hexo"><meta name="keywords" content="Hexo,Java,Linux"><meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport"><meta content="yes" name="apple-mobile-web-app-capable"><meta content="black" name="apple-mobile-web-app-status-bar-style"><meta content="telephone=no" name="format-detection"><meta name="renderer" content="webkit"><link rel="short icon" href="/images/favicon.png" type="image/x-icon"><link rel="stylesheet" href="/css/style.css"><link rel="stylesheet" href="/css/blog_basic.css"><link rel="stylesheet" href="/css/font-awesome.min.css"><link rel="alternate" type="application/atom+xml" title="ATOM 1.0" href="/atom.xml"></head><body><div class="sidebar animated fadeInDown"><div class="logo-title"><div class="title"><img src="/images/[email protected]" style="width:127px;"><h3 title=""><a href="/">immadolf</a></h3><div class="description"><p>Nothing lasts forever.</p></div></div></div><ul class="social-links"><li><a href="http://github.com/immadolf"><i class="fa fa-github"></i></a></li></ul><div class="footer"><a target="_blank" href="/"><span>Theme by </span></a><a href="https://www.caicai.me"> CaiCai </a><span>&</span><a href="https://github.com/Ben02/hexo-theme-Anatole"> Ben</a><div class="by_farbox"><a href="https://hexo.io/zh-cn/" target="_blank">Proudly published with Hexo!</a></div></div></div><div class="main"><div class="page-top animated fadeInDown"><div class="nav"><li><a class="current" href="/">首页</a></li><li><a href="/about">关于</a></li><li><a href="/archives">归档</a></li><li><a href="/links">友链</a></li></div><div class="information"><div class="back_btn"><li><a class="fa fa-chevron-left" onclick="window.history.go(-1)" style="display:none;"> </a></li></div><div class="avatar"><img src="/images/favicon.png"></div></div></div><div class="autopagerize_page_element"><div class="content"><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2019/08/25/在spring-actuator中启用过滤器/">在spring-actuator中启用过滤器</a></h3></div><div class="post-content"><p>ManagementContextConfiguration的使用背景前段时间在工程中加入了spring-actuator来做运维,最终打包后却被告知无法通过安全检查,原因是spring-actuator中提供的http接口没有禁止trace方法。在网上搜了一圈,试了各种方法都没有效果。研究了一下后发现当spri...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2019-08-25</span><i class="fa fa-tag"></i></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2019/07/28/业务中的适配器模式/">业务中的适配器模式</a></h3></div><div class="post-content"><p>适配器模式前言最近看了《代码整洁之道》,书中有一章讲到了代码的边界,并提到可以用适配器模式来构建边界。在我的刻板印象里,适配器模式只有在和遗留的代码打交道时才会使用,书中的这一课对我来说像是打开了一道新的大门。
定义将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2019-07-28</span><i class="fa fa-tag"></i><a class="tag" href="/tags/设计模式/" title="设计模式">设计模式 </a></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2019/05/31/业务中的模板模式/">业务中的模板模式</a></h3></div><div class="post-content"><p>模板模式定义定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
业务背景我所在的公司处于监控领域,在我们的业务中,每个摄像头都是有分类的,有些属于拍摄行人,有些属于拍摄车辆,也有一些两者都拍。每个摄像头本身就有一定的图片分析能力,比如可以...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2019-05-31</span><i class="fa fa-tag"></i><a class="tag" href="/tags/设计模式/" title="设计模式">设计模式 </a></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2019/04/30/业务中的责任链模式/">业务中的责任链模式</a></h3></div><div class="post-content"><p>责任链模式定义通过一条候选对象链隐式的向一个对象发送请求。根据运行时刻情况,任一候选者都可以响应相应的请求。候选者的数目是任意的,可以在运行时决定哪些候选者参与到链中。
业务背景之前的策略模式中提到需要支持将图片存储到不同的地方,当时的做法已经满足了之前的要求,但是现在有了一些变动。
需求的演化新需求其实这个应该...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2019-04-30</span><i class="fa fa-tag"></i><a class="tag" href="/tags/设计模式/" title="设计模式">设计模式 </a></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2019/03/31/业务中的过滤器模式/">业务中的过滤器模式</a></h3></div><div class="post-content"><p>过滤器模式定义允许开发人员使用不同的标准来过滤一组对象,通过逻辑运算以解耦的方式把它们连接起来。
业务背景之前提到我们的服务分为API层和worker层,而API层中有一个资源管理模块,业务代码中涉及获取worker信息的都需要调用资源管理模块的接口。资源管理模块提供了根据指定条件筛选worker的功能。
需求...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2019-03-31</span><i class="fa fa-tag"></i><a class="tag" href="/tags/设计模式/" title="设计模式">设计模式 </a></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2019/02/28/业务中的观察者模式/">业务中的观察者模式</a></h3></div><div class="post-content"><p>观察者模式定义定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
业务背景我们的服务对外是一个服务,内部则分为两层。一个是负责接受上层调用的api层,一个是负责具体干活的worker层。api接受调用,分解任务,调用worker执行任务,最后收集结果并返回。...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2019-02-28</span><i class="fa fa-tag"></i><a class="tag" href="/tags/设计模式/" title="设计模式">设计模式 </a></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2019/01/25/业务中的策略模式/">业务中的策略模式</a></h3></div><div class="post-content"><p>策略模式前言换了新的公司之后遭遇了前所未有的需求变动程度,以至于让一些同事在代码中一股脑的使用String和Object作为类型来应对可能出现的变化。我觉得这样做显然是因噎废食,但自己也疲于变动。于是买了几本设计模式的书开始学习如何应对变化。这个系列的博文是记录自己如何在具体的工作中应用学到的设计模式。
定义定义...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2019-01-25</span><i class="fa fa-tag"></i><a class="tag" href="/tags/设计模式/" title="设计模式">设计模式 </a></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2018/03/17/Spring-Conversion学习/">Spring Conversion学习</a></h3></div><div class="post-content"><p>Spring ConversionService框架1. AbstractApplicationContextAbstractApplicationContext#finishBeanFactoryInitialization方法中会检查容器中是否存在名为conversionservice的类型为Conversi...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2018-03-17</span><i class="fa fa-tag"></i><a class="tag" href="/tags/Spring/" title="Spring">Spring </a></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2018/03/13/二.如何使用Spring-Shell/">二.如何使用Spring Shell</a></h3></div><div class="post-content"><p>二.使用Spring Shell让我们开始吧为了看看Spring Shell已经提供了哪些功能,让我们编写一个包含将两个数相加的命令的简单的shell应用程序。
让我们写一个简单的启动程序从版本2开始,Spring Shell已经完全重写,加入了各种增强功能,其中之一就是可以方便的和Spring Boot集成,尽...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2018-03-13</span><i class="fa fa-tag"></i><a class="tag" href="/tags/Spring-Shell/" title="Spring-Shell">Spring-Shell </a></div></div></div></div><div class="post animated fadeInDown"><div class="post-title"><h3><a href="/2018/03/13/一.Spring Shell是什么/">一.Spring Shell是什么</a></h3></div><div class="post-content"><p>一.什么是Spring Shell?不是所有的应用程序都需要一个华丽的web用户界面!有时候,使用一个交互式终端与一个应用程序交互是完成一件事情最合适的方式。
Spring Shell可以让你轻而易举的创建一个在运行期间可以一直执行用户输入的文字命令的可运行的应用程序。Spring Shell项目提供了使用熟悉的...</p></div><div class="post-footer"><div class="meta"><div class="info"><i class="fa fa-sun-o"></i><span class="date">2018-03-13</span><i class="fa fa-tag"></i><a class="tag" href="/tags/Spring-Shell/" title="Spring-Shell">Spring-Shell </a></div></div></div></div><div class="pagination"><ul class="clearfix"><li class="next pagbuttons"><a class="btn" role="navigation" href="/page/2/">下一页</a></li></ul></div></div></div></div><script src="/js/jquery.js"></script><script src="/js/jquery-migrate-1.2.1.min.js"></script><script src="/js/jquery.appear.js"></script></body></html>