自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CentOS 7 安装FTP服务器

centos 离线安装ftp

2023-02-19 13:22:02 614

原创 docker基础

环境准备CentOS 7.2 64位虚拟机参考文档官网博客阿里云加速器安装步骤移除现有的DockerEngine $ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ d

2022-05-23 18:13:35 96

原创 位运算操作整理

在各种源码中,都会存在位运算的操作,总是不晓得它的意思,抽时间整理一下,在了解位操作运算符之前,需要能了解10进制和2进制之间如何转换;十进制和二进制十进制转二进制无符号转换例如将10转换为二进制就是0000 0000 0000 0000 0000 0000 0000 1010,原理如图:不断将十进制数除以2,直至最后的值为0,然后将每步的余数按照箭头方向从高位到低位组合得到1010,但是int类型在java中是32位,所以需要将前面补0,最后则为0000 0000 0000 0000 0000

2021-08-19 17:23:50 161

原创 windows 10 dokcer 修改镜像文件位置

docker安装时将镜像文件安装到C盘,随着使用docker镜像越来越多,占用C盘的空间越来越大,为了减少C盘空间,需要将镜像地址切换到别的盘。有部分文档说是可以直接在settings->resources->advanced直接修改,在版本v20.10.7下,这一栏会显示[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0mdhpYdP-1627287370447)(images/image-20210726151452293.png)]让通过wsl配置进行处理

2021-07-26 16:16:55 228

原创 windows 10 安装docker

安装包下载地址安装完成后,通过docker -v命令查看dokcer版本C:\WINDOWS\system32>docker -vDocker version 20.10.7, build f0df350通过docker images查看镜像文件正常情况如下:C:\Program Files\Docker\Docker>docker imagesREPOSITORY TAG IMAGE ID CREATED SIZE若出现错误C:\WINDOWS\s

2021-07-24 17:00:38 143

原创 代理模式-JDK动态代理

特点动态代理是AOP的核心技术,JDK的动态代理主要基于java.lang.reflect.InvocationHandler与java.lang.reflect.Proxy类,通过反射技术创建代理对象。实现创建一个@Before注解,在Sales接口上加上注解public interface Sales { @Before void sale(Goods goods);}创建一个InvocationHandler,实现invoke方法@Slf4jpublic class

2021-03-26 18:11:58 112

原创 代理模式-静态代理

特点代理模式表示代理一个类的功能,主要关注点在于控制。属于结构性模式。一般分为静态代理和动态代理,其中静态代理在结构上与适配器模式、包装器模式非常相似。动态代理一般会被分为JDK动态代理和Cglib动态代理,前者只能代理接口,后者可代理具体类。实现示例静态代理需要代理对象与被代理对象都实现同一个接口,然后在代理对象内实现控制逻辑。模拟商品代理的过程,当商品生产后,工厂售卖商品,代理商代理工厂也售卖商品,代理商售卖商品前需要对商品加价处理。商品类public class Goods {

2021-03-26 18:05:46 110

原创 设计模式-享元模式

特点享元模式主要用于复用对象,减少对象数量以节省系统资源、提高性能。属于结构型模式。常见于线程池等技术实现。代码享元模式共享内部状态,即相同的那部分。外部状态不能共享,即不同的地方,以围棋的棋子为例:围棋棋子在初始状态下分为黑白2色,当棋子移动到棋盘时,会产生一个坐标。棋子工厂类public class ChessPiecesFactory { private static final Map<Color,WeiQiChessPieces> CHESS_PIECES_MAP

2021-03-18 19:56:46 65

原创 设计模式-外观模式

外观模式也叫门面模式,它只涉及单一的类,即对外提供一个接口类,适用方无须知道具体实现,通常封装的工具类、mvc模式的controller等都是门面模式的应用。该模式符合迪米特法则。属于结构型模式。...

2021-03-17 14:32:54 75

原创 设计模式-装饰器模式

特点装饰者模式也叫包装器模式,它允许向现有的对象新增功能,但是不改变现有对象的结构,主要作用于该对象的增强功能,属于结构型模式。代码实现装饰器中抽象类public abstract class Animal { public abstract void eat();}public class Monkey extends Animal{ @Override public void eat(){ log.info("我会吃香蕉"); }}

2021-03-17 10:41:54 59

原创 设计模式-组合模式

特点组合模式主要用于层次结构比较明显的对象创建,如树结构、树形菜单、文件管理等。属于结构型模式。代码针对按钮实现父级按钮和子集按钮展示。按钮类public class Button { private int id; private String name; private List<Button> subButtons; private int level; public Button(int id, String name,int

2021-03-16 14:33:57 62

原创 设计模式-过滤器模式

特点过滤器模式也叫标准模式,允许开发人员根据标准过滤一组对象,通过逻辑运算解耦应用程序。程序代码pojo 对象Person类@Slf4j@Data@Accessors(chain = true)public class Person { private int age; private boolean married; private int sex;}标准接口类public interface Criterion { List<Per

2021-03-15 17:44:04 127 2

原创 设计模式-桥接模式

特点桥接模式属于结构型,它的主要特点在于,多维度接口都能独立变化,抽象和实现分离、然后聚合关联关系。代码示例先后定义一个画笔和形状,画笔有红色和绿色、形状有方形和圆形。当需要画图形时,就需要将画笔和形状链接。画笔接口public interface Brush { String color();}形状接口public interface Shape { String shape();}画笔实现类@Slf4jpublic class GreenBrush

2021-03-12 17:18:44 93

原创 设计模式-适配器模式

特点适配器模式主要将已有的接口转化适配成客户需要使用的接口,针对代码后期补救措施,一般在代码设计之初不会采用,主要应用场景是兼容之前的接口。它属于结构型模式,主要实现方式为类适配(继承)和对象适配(组合)的方式。本文基于经典的充电器问题进行说明。核心代码提供电压接口(插座)@Slf4jpublic class Socket{ private int voltage = 220; // 提供一个电压 public int support220(){ lo

2021-03-12 14:37:55 54

原创 Springboot-Admin集成钉钉机器人推送通知

Springboot-Admin集成钉钉机器人推送通知参考文档https://ding-doc.dingtalk.com/doc#/serverapi2/qf2nxq/e9d991e2 https://blog.csdn.net/u010433956/article/details/106350871/背景说明之前尝试采用邮件推送通知,由于阿里云需要配置smtp邮件发送相关服务,才能发送邮件,另外邮件通知并不及时,平时办公也会使用钉钉,钉钉已经是工作中不可缺少的一部分,另外群机器人创建过程中

2021-03-11 15:50:17 983

原创 设计模式-原型模式

特点原型模式属于创建型。用于创建拷贝复杂对象,避免重复创建对象发生的资源损耗,在一定程度上提升了性能。原型模式主要被分为浅拷贝和深拷贝2种模式,它主要实现了接口Cloneable,重写Object类中的clone方法。浅拷贝浅拷贝只能对基本类型(long,double,float,int,short,byte,boolean,char)和String类型有效果,对复杂的类型只能不能有效果。public class Car implements Cloneable{ private Stri

2021-03-11 15:23:29 130 3

原创 idea创建模板类和方法

需求和背景在很多时候,我们经常会在类和方法上面添加一些注释信息,例如:/** * @author bys * @version 1.0 * @description // TODO: 2021/3/10 * @since 2021/3/10 */IDEA 提供了对操作的模板的设置方式;在类上添加模板注释打开settings找到 File | Settings | Editor | File and Code Templates ,然后找到Class,修改内容:#if (${PACKA

2021-03-11 09:41:51 280

原创 建造者模式

特点建造者模式也叫创建者模式,属于创建型设计模式。旨在更为灵活的创建对象。该模式有一个Builder类,主要提供对象的构建过程。与工厂模式最大的区别在于工厂模式是封装了对象的创建过程,提供最终的对象,而建造者模式则更为灵活的将建造过程提供给使用者,让其自由设定对象创建过程和属性。代码public class Phone { private String cpu; private String battery; private String model; private

2021-03-10 10:22:47 74

原创 设计模式-工厂设计模式

特点工厂模式属于创建型,是生成创建复杂对象的一种设计模式。通常情况下,工厂模式被分为工厂模式和抽象工厂模式。其中工厂模式也被称为简单工厂模式,它的每一个工厂都是一个单例。抽象工厂模式即为将每个工厂的一些步骤抽象化,达到代码复用的目的。工厂模式假使存在一个制造手机的工厂,工厂存在2条生产线,一条制造MiPhone,1条制造HuaPhone;手机存在拨打电话和发送短信的功能。手机功能接口类public interface Phone { void call(); void se

2021-03-09 13:34:18 896

原创 备忘录设计模式

特点备忘录模式通常来讲有3个类,一个需要备忘存档的Memo类,一个发起者Initiator,还有一个管理Meno的类MenoManager。备忘录模式运用也比较广泛,如:撤销、回滚、悔棋、游戏存档等场景。备忘录模式解耦了Initiator和MomeManager、能查看到一定时期的历史数据、能防止误操作等优点,但同时也最大的缺点会产生大量的历史数据、会比较占用空间。本文将实现一个比较容易的存档和回滚到某个时间段的功能。类图如下:说明 : Memo 为一个pojo,拥有content和time字段;

2021-03-05 18:43:59 114

原创 设计模式-单例

特点系统内有且只有一个实例对象;单例类的构造方法为私有的,自己持有自己的一个实例对象;开放获取实例对象的方法;分类单例模式主要可分为饿汉式、饱汉式、枚举式、内部类、容器式;测试代码均采用多线程测试方式。饿汉式在类加载时,创建一个实例,当外部获取时,直接返回创建的实例。这种方式占用了一定的内存空间、节约了在使用时创建对象的时间和资源消耗。也不用担心线程安全的问题。public class HungrySingleton { private HungrySingleton(){}

2021-03-04 17:59:15 187 4

原创 springboot 全局配置时间格式化

springboot 全局配置时间格式化在web项目中,后台服务返回给前端的时间格式若未配置,则返回的数据可能是时间戳或者数组,例子如下:entity 类型LocalDateTime{ "id": 5, "name": null, "age": null, "jsonStr": null, "ct": "2020-08-04T14:56:54.971"}entity 类型为Date,时间为时间戳{ "id": 5,

2021-02-23 14:34:46 702 1

原创 Feign异常捕获

说明在分布式系统中,系统与系统之间通常使用FeignClient进行数据交互,但当被调用方需要抛出特定异常时,调用方不能捕获到异常信息进行业务处理,本文档对此种现象进行了说明,并提供一种解决方案。准备代码准备client<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign&..

2021-02-20 17:03:26 6265

原创 Postgresql 9.6 在CentOS 7.2 中流复制模式搭建

参考资料:https://www.jianshu.com/p/41d857a5d743https://www.postgresql.org/download/linux/redhat/1.准备工作1.1 准备2台虚拟机192.168.29.130 安装主库192.168.29.131 安装从库1.2 了解单击版安装步骤请查看 Postgresql 9.6 在Centos 7...

2019-11-02 22:32:46 106

原创 Postgresql 9.6 在Centos 7.2 版本中安装步骤

参考网站https://www.postgresql.org/download/linux/redhat/1.依次选择版本、平台、架构,然后会看到下面的步骤:/usr/pgsql-9.6/bin/postgresql96-setup initdb 初始化数据库systemctl enable postgresql-9.6 允许开机启动systemctl start po...

2019-09-25 17:21:34 206

转载 linux操作

1.查看防火墙状态systemctl status firewalld2.查看开机是否启动防火墙服务systemctl is-enabled firewalld3.关闭防火墙systemctl stop firewalld4.禁用防火墙systemctl disable firewalld ...

2018-09-08 09:58:12 71

空空如也

空空如也

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

TA关注的人

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