自定义博客皮肤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)
  • 收藏
  • 关注

原创 Java面向对象设计之适配器模式

模式动机在软件开发中采用类似于电源适配器的设计和编码技巧被称为适配器模式。通常情况下,客户端可以通过目标类的接口访问它所提供的服务。有时,现有的类可以满足客户类的功能需要,但是它所提供的接口不一定是客户类所期望的,这可能是因为现有类中方法名与目标类中定义的方法名不一致等原因所导致的。在这种情况下,现有的接口需要转化为客户类期望的接口,这样保证了对现有类的重用。如果不进行这样的转化,客户类就不能利用现有类所提供的功能,适配器模式可以完成这样的转化。在适配器模式中可以定义一个包装类,包装不兼容接口的对

2021-02-27 16:46:03 209

原创 Java面向对象设计模式之建造者模式

一、模式动机无论是在现实世界中还是在软件系统中,都存在一些复杂的对象,它们拥有多个组成部分,如汽车,它包括车轮、方向盘、发动机等各种部件。而对于大多数用户而言,无须知道这些部件的装配细节,也几乎不会使用单独某个部件,而是使用一辆完整的汽车,可以通过建造者模式对其进行设计与描述,建造者模式可以将部件和其组装过程分开,一步一步创建一个复杂的对象。用户只需要指定复杂对象的类型就可以得到该对象,而无须知道其内部的具体构造细节。在软件开发中,也存在大量类似汽车一样的复杂对象,它们拥有一系列成员属性,这些成员属性中

2020-09-28 14:52:54 176

原创 Java面向对象设计模式之单例模式

模式动机原文地址:点我去原文对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;一个系统只能有一个窗口管理器或文件系统;一个系统只能有一个计时工具或ID(序号)生成器。如何保证一个类只有一个实例并且这个实例易于被访问呢?定义一个全局变量可以确保对象随时都可以被访问,但不能防止我们实例化多个对象。一个更好的解决办法是让类自身负责保存它的唯一实例。这个类可以保证没有其他实例被创建,并且它可以提供一个访问该实例的方法。这就是单例模式的模式动机

2020-08-28 17:34:15 184

原创 Java面向对象设计模式之工厂模式

一、模式定义工厂方法模式(Factory Method Pattern)又称为工厂模式,也叫虚拟构造器(Virtual Constructor)模式或者多态工厂(Polymorphic Factory)模式,它属于类创建型模式。在工厂方法模式中,工厂父类负责定义创建产品对象的公共接口,而工厂子类则负责生成具体的产品对象,这样做的目的是将产品类的实例化操作延迟到工厂子类中完成,即通过工厂子类来确定究竟应该实例化哪一个具体产品类。二、模式结构1. 角色组成工厂方法模式包含如下角色:Product:抽

2020-08-24 11:51:22 268

原创 Java面向对象设计模式之状态模式

一、模式动机在很多情况下,一个对象的行为取决于一个或多个动态变化的属性,这样的属性叫做状态,这样的对象叫做有状态的(stateful)对象,这样的对象状态是从事先定义好的一系列值中取出的。当一个这样的对象与外部事件产生互动时,其内部状态就会改变,从而使得系统的行为也随之发生变化。二、模式定义状态模式(State Pattern):允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象(Objects for States),状态模式是一种对象行为型模式。三、模式

2020-08-10 15:42:35 202

原创 Java面向对象设计模式之策略模式

一、模式动机完成一项任务,往往可以有多种不同的方式,每一种方式称为一个策略,我们可以根据环境或者条件的不同选择不同的策略来完成该项任务。在软件开发中也常常遇到类似的情况,实现某一个功能有多个途径,此时可以使用一种设计模式来使得系统可以灵活地选择解决途径,也能够方便地增加新的解决途径。在软件系统中,有许多算法可以实现某一功能,如查找、排序等,一种常用的方法是硬编码(Hard Coding)在一个类中,如需要提供多种查找算法,可以将这些算法写到一个类中,在该类中提供多个方法,每一个方法对应一个具体的查找算法

2020-07-30 20:33:18 233

原创 Linux 常用命令

Linux连接工具在项目开发过程中,所用到的服务器基本上都是linux服务器,所以掌握一些linux命令是十分必要的。推荐两款很好用的工具:Xshell:Linux命令控制台。Xftp:最主要的是上传下载,我还可以用他来创建文件夹,创建文件,修改文件,删除文件等等。。下面是linux的基本结构目录:##Linux常用ls命令就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等。。常用参数

2020-07-30 20:32:08 125

原创 String字符串转Date日期

日期转换今日写代码的时候,发现前端的日期格式字符串不能被后台接收。于是找出了下面这么个配置来统一处理日期格式的转换。非BOOT方式xml配置:import java.text.SimpleDateFormat;import java.util.Date;import org.springframework.beans.propertyeditors.CustomDateEditor;import org.springframework.web.bind.WebDataBinder;imp

2020-07-30 20:31:08 449

原创 使用阿里云搭配git搭建博客

近期在阿里云买了个学生服务器,就想着把github上的博客迁移过来。整个过程陆陆续续花了一个多星期的时间,也踩了不少坑,在此做个记录备忘。准备工作开启端口,轻量级服务器不用手动开,默认带了三个。ECS服务器需要自己配置。开启端口如下:1、安装git使用yum安装即可yum install git完成后输入git version,若显示git版本信息即安装成功。2、安装Node.js去官网下载https://nodejs.org/en/download/,博主是用的最新版10.15.

2020-07-30 20:30:24 182

原创 Java 多级菜单树工具

关于Java中多级菜单树的处理今天被一个菜单列表的展现折磨得不轻,自己写代码发现实在是费时费力,而且代码量太大,逻辑亟待优化,后续找到了这个代码十分简洁的工具类,说实话我只能看得懂,写不出来这种东西。在此分享给大家,避免重复造轮子的工作~多级树Bean这是一个基础bean:/** * 功能描述:> 段落引用 * 【分组信息bean】 * 注意,下面的bean每个属性都为必要属性,不可缺一 * 继承此bean再添加多个属性,不会影响树结构 * 类上的三个注解为lombok插件 *

2020-07-30 15:24:32 338

原创 CentOS7.5安装confluence6.15.2

Confluence简介Confluence是一个专业的企业知识管理与协同软件,也可以用于构建企业wiki。使用简单,但它强大的编辑和站点管理特征能够帮助团队成员之间共享信息、文档协作、集体讨论,信息推送。Confluence为团队提供一个协作环境。在这里,团队成员齐心协力,各擅其能,协同地编写文档和管理项目。从此打破不同团队、不同部门以及个人之间信息孤岛的僵局,Confluence真正实现...

2019-09-21 16:16:56 319

空空如也

空空如也

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

TA关注的人

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