自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

weixiaohuai的博客

任何质变都来自于量变的积累。

  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 设计模式之工厂模式 - 抽象工厂模式

一、简介概念:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。上面的文字说明,并不是很好理解,所以举个简单的例子:如海尔电器工厂生产的海尔电视机、海尔电冰箱,海尔电视机位于电视机产品等级结构中,海尔电冰箱位于电冰箱产品等级结构中,海尔电视机、海尔电冰箱构成了一个产品族。我们将生产海尔电视机、海尔电冰箱(位于不同等级结构中的产品)的工厂就叫做抽象工厂。二、与工厂方...

2019-10-24 20:58:39 137

原创 设计模式之工厂模式 - 工厂方法模式

一、简介概念:定义了一个创建对象的抽象方法,由子类决定要实例化的类,将对象实例化推迟到子类进行。按照前面讲解的简单工厂模式,假如随着需求不断变化,系统需要优化,想将宝马汽车、奔驰汽车等不同品牌的汽车分开生产,可能后面会扩展不同品牌不同厂家这种情况。针对这种情况,我们可以使用工厂方法模式创建不同品牌汽车的工厂,这样的话,他们之间互不影响。后面如果想扩展其他品牌的话,也无需改动旧代码,直接添加多...

2019-10-24 14:28:52 124

原创 Oracle导入导出批处理

一、简介最近,在工作中,需要用到重复导入导出oaracle数据库dmp文件,如果每次都重复导,个人感觉有点麻烦,然后就自己研究了一下,写了两个批处理文件,极大地方便oracle的导入导出。二、导出大家都知道,oracle导出的语句为:exp 数据库用户名/数据库密码@数据库服务器ip/orcl file=d:xxx.dmp statistics=none借助这个命令,首先创建一个...

2019-10-23 19:29:50 269

原创 设计模式之工厂模式 - 简单工厂模式

一、简介工厂模式是工作中比较常用的一种模式,分为简单工厂模式、工厂方法模式,抽象工厂模式,接下来我们将首先介绍简单工厂模式的思想以及通过一个简答的示例说明其好处。概念:简单工厂模式属于创建型模式,是工厂模式的一种,也叫静态工厂模式(Static Factory Method)。简单工厂模式是由一个工厂对象决定创建出哪一种类型的产品,定义一个统一的创建对象的类,由这个类负责实例化对象的行为...

2019-10-20 21:10:18 91 2

原创 设计模式之单例模式

一、概念所谓单例模式,就是采取一定的方法保证整个系统中,对某个类只能存在一个对象实例,并且该类只对外提供一个获取该对象实例的方法。分类:单例模式一共有八种写法,分别为:饿汉式 - 静态常量方式; 饿汉式 - 静态代码块; 懒汉式 - 线程不安全方式; 懒汉式 - 线程安全 - 同步方法方式; 懒汉式 - 线程安全 - 同步代码块; 双重检查(Double Check); 静...

2019-10-19 10:25:11 62

原创 通过自定义注解排除不需要过滤URL的方法

一、简介最近在项目中,使用过滤器的时候,在设置哪些URL需要过滤,哪些URL不需过滤时,一开始想着用配置文件的形式进行配置(当然这种方法也可行),但是我想了想有没有更加优雅的方式,这种URL硬编码在配置文件里面并不太友好,也不好维护,于是我想到了用自定义注解的形式来配置哪些URL进行排除在外,下面就介绍详细的实现步骤。二、实现步骤【a】创建springboot项目,pom.xml依赖文...

2019-10-16 17:37:59 1972 2

原创 软件设计原则之合成复用原则

一、简介(一)概念合成复用原则,又叫组合/聚合复用原则,它要求在软件复用时,要尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。(二)继承复用通常类的复用分为继承复用和合成复用两种,继承复用虽然有简单和易实现的优点,但它也存在以下缺点:继承复用破坏了类的封装性。因为继承会将父类的实现细节暴露给子类,父类对子类是透明的,所以这种复用又称为“白箱”复用。 子类与父...

2019-10-15 20:38:45 137

原创 软件设计原则之开闭原则

一、简介概念:软件中的对象(类,模块,函数等等)应该对于扩展是开放的,但是对于修改是封闭的。问题由来:直接在原代码上修改会有风险,可能导致原先功能出现不可预知错误; 如果新需求更改频繁,对原先功能就修改越频繁; 随着功能的增多,模块的大小也越来越臃肿;实现方式:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。(用抽象构建框架,用...

2019-10-12 21:46:48 133

原创 软件设计原则之里氏替换原则

一、概念里氏替换原则,在设计模式之禅一书中有两种定义:定义1:如果对每一个类型为S的对象o1,都有类型为T的对象o2,使得以T定义的所有程序P在所有的对象o1都代换成o2 时,程序P的行为没有发生变化,那么类型 S 是类型 T 的子类型。 定义2:所有引用基类的地方必须能透明地使用其子类的对象。综合上面比较抽象的含义,换句话可能好理解些:其实就是对于同一个程序P,把出现父类对象的地方...

2019-10-11 21:29:14 113

原创 软件设计原则之依赖倒置原则

一、概念高层模块不能依赖低层模块,两者都应该依赖抽象(抽象类或者接口); 抽象不能依赖细节,细节应该依赖抽象; 依赖倒置原则核心思想就是面向抽象类或者接口(abstract class / interface)编程; 程序要依赖于抽象接口,不要依赖于具体实现;优点:降低了客户与实现模块间的耦合; 提高代码的可读性、可扩展性和可维护性; 提高系统的稳定性,降低并行开发引起的风险;...

2019-10-10 21:01:21 71

原创 软件设计原则之接口隔离原则

一、概念客户端不应该依赖它不需要的接口; 一个类对另一个类的依赖应该建立在最小的接口上。简单理解,就是不要在一个接口中定义太多的方法,这样这个接口会显得非常臃肿。接口应该细分到对应一个功能模块,不能建立一个大的接口将很多客户端要用的方法都写在一个接口中。与单一职责原则区别:接口隔离原则和单一职责原则的审视角度是不同的,单一职责原则要求类和接口职责单一,注重的是职责,是业务逻辑上的划...

2019-10-08 22:26:00 129

原创 软件设计原则之单一职责原则

一、简介最近看了一些帖子,有句话特别深刻:"技术人,写代码其实大家都会,就看谁写的代码好理解,好扩展,好维护"。接下来一段时间,想去研究研究设计模式,去领悟一下其中的奥妙。在学习设计模式之前,先研究一波软件设计的七大原则:单一职责原则 接口隔离原则 依赖倒置原则 里氏替换原则 开闭原则 迪米特原则 合成复用原则本文将首先总结一下单一职责原则。二、概念对类而言,一个类/...

2019-10-08 22:13:39 196

zipkin-server jar.zip

spring cloud zipkin服务链路跟踪server相关jar包,下载完成之后使用java -jar zipkin-server-2.12.9-exec.jar方式运行,就能启动zipkin-server,不建议自己搭建zipkin-server

2020-08-29

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除