自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 设计模式之策略模式

设计模式之策略模式一、模式介绍1.1 模式意图定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。本模式使得算法可独 立于使用它的客户而变化。1.2 动机有许多算法可对一个正文流进行分行。将这些算法硬编进使用它们的类中是不可取的,原因:需要换行功能的客户程序如果直接包含换行算法代码的话将会变得复杂,这使得客户程 序庞大并且难以维护, 尤其当其需要支持多种换行算法时问题会更加严重。不同的时候需要不同的算法,我们不想支持我们并不使用的换行算法。当换行功能是客户程序的一个难以分割

2020-08-15 11:36:03 215

原创 设计模式之原型模式

设计模式之原型模式一、模式定义用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。二、为什么要使用原型模式当创建给定类的实例的过程很昂贵或很复杂时,就使用原型模式。三、 哪些情况下可以考虑使用原型模式构建复杂对象时,构建的过程很复杂,或者构建对象代价很高。对象的很多属性可以公用,只有极少部分的属性需要单独赋值。当要实例化的类是在运行时刻指定时,例如,通过动态装载。为了避免创建一个与产品类层次平行的工厂类层次时。当一个类的实例只能有几个不同状态组合中的一种时。建立相应数目的原

2020-08-15 08:21:37 106

原创 设计模式之建造者模式

设计模式之建造者模式什么是建造者模式?建造者模式解决了什么问题?什么时候应该使用建造者模式?怎么使用?一、模式说明1.1 意图将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。1.2 动机​1.3 适用性在以下情况下使用 Builder 模式:当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。当构造过程必须允许被构造的对象有不同的表示时。一个类的构造器或者静态工厂中有多个参数时,特别是大多数参数是可选的时候。1.4 结构

2020-08-09 10:23:56 156

原创 设计模式之观察者模式

设计模式之观察者模式观察者模式是什么?解决了什么问题?什么情况下适用观察者模式?怎么实现观察者模式?现在的OOM系统里面,有哪些地方用到了观察者模式呢?一、模式介绍1.1 意图定义对象间的一种一对多的依赖关系 ,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新。1.2 动机将一个系统分割成一系列相互协作的类有一个常见的副作用:需要维护相关对象间的一致性。我们不希望为了维持一致性而使各类紧密耦合,因为这样降低了它们的可重用性。例如, 许多图形用户界面工具箱将用户应

2020-07-19 20:59:12 169

原创 Linux环境下安装Tomcat

Linux 环境下安装 Tomcat一、环境准备tomcat压缩包拷贝到对应的文件夹,解压cd /usr/local/src/# 这里创建多个文件夹用于做多个服务器。 直接将tomcat压缩包拷贝至对应的文件夹解压即可。mkdir tomcat8080mkdir tomcat8081mkdir tomcat8082# 解压tar zxvf apache-tomcat-9.0.24.tar.gz二、修改端口号解压后进入目录,可以看到目录下有如下文件:[外链图片转存失败,源站可能有防盗

2020-07-18 15:59:13 157

原创 Linux环境下安装Nginx

Linux 环境下安装 Nginx一、安装编译工具及库文件# 直接执行即可,之前有安装过部分文件也没问题。yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel二、安装 PCREPCRE 作用是让 Nginx 支持 Rewrite 功能。# 1. 下载 PCRE 安装包,下载地址: <http://downloads.sourceforge.net/project/pcre/pcre/8.43/

2020-07-18 09:42:22 113

原创 设计模式之单例模式

设计模式之单件模式一、模式说明1.1 意图保证一个类仅有一个实例,并提供一个访问它的全局访问点。1.2 动机​ 对一些类来说,只有一个实例是很重要的。虽然系统中可以有许多打印机,但却只应该有一个打印假脱机,只应该有一个文件系统和一个窗口管理器。一个数字滤波器只能有一个 A / D 转换器。一个会计系统只能专用于一个公司。​ 我们怎么样才能保证一个类只有一个实例并且这个实例易于被访问呢?一个全局变量使得一个对象可以被访问,但它不能防止你实例化多个对象。 一个更好的办法是,让类自身负责保存它的唯一实

2020-07-04 15:59:28 176

原创 Linux环境下安装Redis

Linux 环境下安装 Redis一、环境准备下载 Redis 安装包并放入 Linux系统 /opt 目录下,可以直接在官网下载 官网地址二、解压安装进入 redis 安装包目录下,解压tar -zxvf redis-5.0.7.tar.gz解压完成后出现文件夹:redis-5.0.7。在 redis-5.0.7 目录下执行 make 指令make 执行完成以后,继续执行 make install至此,Redis 已经安装完成。查看安装目录:usr/local/bin#

2020-06-29 22:03:52 4340

原创 Linux环境下安装JDK

Linux 环境下的 Java 安装第一步 环境准备将准备好的 JDK 拷贝到我们的服务器上,注意这里需要 linux 版的安装包。一般放在 /usr/local 目录下第二步 解压安装进入 /usr/local/ 目录,执行解压指令tar -zxvf jdk-8u221-linux-x64.tar.gz为了方便,我们给新解压的 java 文件夹改个名字 jdk1.8.0_221 -> jdk1.8第三步 配置 Java 环境用root用户登录,修改配置文件 /etc

2020-06-29 21:20:46 115

原创 设计模式之工厂模式

设计模式之工厂模式简单工厂?工厂方法?抽象工厂?是什么,有什么区别?为什么要使用工厂方法?它解决了什么问题?有什么好处?使用工厂方法有什么限制?在什么情况下我们会考虑使用工厂模式呢?一、简单工厂1.1 案例演示情境:现在要你做一个计算器控制台程序,要求输入两个数和运算符,得到结果。在没吃公鸡蛋之前,你写的程序可能是这样的:public static void main(String[] args) { try { Scanner scanner = new Sc

2020-06-27 11:26:17 400

原创 设计模式——软件设计的太极剑法

起势,左右野马分鬃,白鹤亮翅……随着一声声响亮的招式,无忌打出了一套漂亮的连击。等等,这里不是设计模式专场吗?是不是搞错了?没错,设计模式其实就是软件设计世界里面的一套武功秘籍。是由历代“武学大师”呕心沥血总结出来,并在实战中大展拳脚。下面就让我们一起来看看,设计模式的庐山真面目吧。

2020-06-24 06:59:28 577

空空如也

空空如也

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

TA关注的人

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