自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(154)
  • 资源 (1)
  • 收藏
  • 关注

原创 从0开始搭建一个自动化部署项目

1 基础环境两条腾讯云主机:4c8g/2c4g centos7jdk-8u321-linux-x64.tar.gzgit version 1.8.3.1apache-maven-3.6.3-bin.tar.gz2 安装jdk1.82.1下载jdk安装包https://www.oracle.com/java/technologies/downloads/登录后,获取下载连接使用wget下载安装包到/root/tools目录下mkdir -p /root/tools &&

2022-03-31 21:45:08 1858

转载 自动化运维工具——ansible详解(二)

自动化运维工具——ansible详解(二)1 Ansible playbook 简介playbook 是 ansible 用于配置,部署,和管理被控节点的剧本。  通过 playbook 的详细描述,执行其中的一系列 tasks ,可以让远端主机达到预期的状态。playbook 就像 Ansible 控制器给被控节点列出的的一系列 to-do-list ,而被控节点必须要完成。  也可以这么理解,playbook 字面意思,即剧本,现实中由演员按照剧本表演,在Ansible中,这次由计算机进行表演,

2022-03-04 23:17:12 363

转载 自动化运维工具–ansible详解(一)

自动化运维工具–ansible详解(一)ansible简介ansible是什么ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。  ansible是基于 paramiko 开发的,并且基于模块化工作,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。ansible不需要在远程主机上安装client/agen

2022-03-04 17:09:37 1472

原创 docker安装gitlab

一、安装及配置1.gitlab镜像拉取# gitlab-ce为稳定版本,后面不填写版本则默认pull最新latest版本$ docker pull gitlab/gitlab-ce2.运行gitlab镜像$ docker run -d -p 10245:443 -p 10246:80 -p 10247:22 --name gitlab --restart always -v /root/myspace/tools/gitlab/config:/etc/gitlab -v /root/mysp

2022-03-02 17:12:02 310

原创 sql注入

sql注入1 sql注入2 防止sql注入    2.1使用prepareStatement+Bind-Variable    2.2 使用应用程序提供的转换函数    2.3 自定义函数校验1 sql注入SQL注入就是利用某些数据库的外部接口将用户数据插入到实际的数据库操作语言(SQL)当中,从而达到入侵数据库乃至操作系统的目的,如下实例:1)创建用户表create table

2020-06-14 20:48:55 1022

原创 mysql索引

mysql索引1 概述2 设计索引的原则3 BTREE和HASH索引1 概述1)mysql支持的索引有BTREE索引,HASH索引,前缀索引,全文本(FULLTEXT)索引.MyISAM和InnoDB默认创建的都是BTREE索引.前缀索引的长度跟存储引擎相关,对于MyISAM存储引擎的表,索引的前缀长度可以达到000字节长,InnoDB的为767字节.FULLTEXT索引可以用于全文搜索,但是mysql5.0只用MyISAM支持全文本索引,并且只限于char,varchar和text列2)创建索引语法

2020-06-14 14:19:39 147

原创 mysql字符集

mysql字符集1 字符集的设置    1.1服务器字符集和校对规则    1.2 数据库字符集和校对规则    1.3 表的字符集和校对规则    1.4 列的字符集和校对规则    1.5 连接字符集和校对规则2 字符集的修改步骤1 字符集的设置MySql的字符集和校对规则有4个级别的默认设置:服务器级

2020-06-14 11:46:41 163

原创 mysql选择合适的数据类型

选择合适的数据类型1 char与varchar2 text与blob3 浮点数与定点数4 日期类型选择1 char与varchar1)char长度固定,所以处理速度比varchar快,缺点是浪费空间,程序需要对行尾空格进行处理,对于长度变化不大,并且对查询效率有要求的数据可以使用char2)MyISAM存储引擎:建议使用固定长度的数据列代替可变长度的列3)MEMORY存储引擎:使用char或者varchar均可,两者都是按照char类型处理4)InnoDB存储引擎:建议使用varchar类型,对于

2020-06-08 23:05:50 232

原创 mysql存储引擎

mysql存储引擎1 概述1 概述MYSQL5.0支持的存储引擎包括MYISAM,InnoDB,BDB,MEMORY,MERGE,EXAMPLE,NDB Cluster,ARCHIVE,CSV,BLACKHOLE,FEDERATED等,其中InnoDB和BDB提供事务安全表,其他存储引擎都是非事务安全表.查询默认存储引擎:show variables like ‘%storage_engine%’;查询数据库支持的存储引擎show engines...

2020-06-07 17:50:39 1710

原创 mysql常用函数

1 字符串函数concat(S1,S2,…,Sn) 连接S1,S2,…,Sn为一个字符串insert(str,x,y,instr) 将字符串str从第x位置开始,yge字符长的子串替换为字符串instrlower(str) 将字符串str中所有字符变为小写upper(str) 将字符串str中所有字符变为大写left(str,x)返回字符串str最左边的x个字符right(str,y)返回字符串str最右边的y个字符lpad(str,n,pad)用字符串pad对str最左边进行填充,直到长度为

2020-05-31 22:45:07 163

原创 mysql中的运算符

1 算术运算符2 比较运算符3 逻辑运算符4 位运算5 运算符优先级实际上,很少有人能将这些优先级熟练记忆,很多情况下我们都是使用"()"来将需要优先的操作扩起来,这样易于理解.

2020-05-31 21:14:00 174

原创 Mysql支持的数据类型

Mysql支持的数据类型1 数值类型    1.1 整数类型    1.2 浮点数类型与定点数类型    1.3 位数型2 日期事件类型    2.1 数据类型的区别如下:    2.2 日期类型取值范围    2.3 日期类型的插入格式3 字符串类型1 数值类型&n

2020-05-31 20:29:43 254

转载 java 泛型详解

java 泛型详解1. 概述2. 一个栗子3. 特性4. 泛型的使用    4.1 泛型类     4.2 泛型接口     4.3 泛型通配符     4.4 泛型方法        4.4.1 泛型方法的基本用法       

2020-05-19 19:44:01 148

转载 java代码精简之道

java代码精简之道1.利用语法    1.1.利用三元表达式    1.2.利用 for-each 语句    1.3.利用 try-with-resource 语句    1.4.利用 return 关键字    1.5.利用 static 关键字    1.6.利用

2020-05-16 23:03:38 533

原创 Activiti(四)--流程任务

1 BPMN 2.0任务BPMN 2.0定义了多种不同的任务,每种任务都有其特定的行为.BPMN2.0中定义的任务有Service Task,Send Task,Receive Task,User Task,Manual Task,Business Rule Task和Script Task1.1 任务的继承任务的继承关系如下图:1.2 任务的类型ServiceTask:服务任务可以用...

2020-05-09 22:03:54 1116

原创 Activiti(四)--流程事件

1 事件分类1.1 按照事件的位置分类开始事件:表示流程开始的事件结束事件:表示流程结束的事件中间事件:出现在流程中,单独作为流程节点的事件1.2 按照事件的特性分类Catching事件:会一直等待被触发Throwing事件:会自动触发并反馈结果2.事件定义2.1 定时器事件定义定时器事件是由定时器触发的事件,定时器事件的定义可以嵌套在开始事件,中间事件或者边界事件中.配置如下...

2020-05-05 21:31:01 935

原创 Activiti(五)--历史数据管理和流程引擎管理

历史数据管理和流程引擎管理1 历史数据管理    1.1 历史流程实例查询    1.2 历史任务查询    1.3 历史行为查询    1.4 历史流程明细查询    1.5 删除历史流程实例和历...

2020-05-03 22:35:46 1046

原创 RocketMQ(1)-RocketMQ特点和基本概念

特点1 具有灵活的可扩展性.RocketMQ天然支持集群,其核心四大组件(NameServer,Broker,Producer,Consumer)的每一个都可以在没有单点故障的情况下进行水平扩展2 具有海量消息堆积能力.RocketMQ采用零拷贝原理实现了超大量消息的堆积能力,据说单机已经支持亿级消息堆积,而且在堆积了这么多消息后保持写入低延迟3 支持顺序消息.RocketMq可以保持消息消...

2020-05-03 15:22:50 1200

原创 Activiti(四)--流程控制

Activiti流程控制1 流程实例与执行流    1.1 流程实例与执行流概念    1.2 流程实例与执行流对象(ProcessInstance与Execution)2 启动流程3 流程参数    3.1 设置与查询流程参数    3....

2020-05-02 17:53:59 860

原创 Activiti(三)--流程任务管理

Activiti流程任务管理1 任务的创建与删除1 任务的创建与删除1.1 Task接口一个Task实例表示流程中的一个任务,Task是一个接口,其实现类为TaskEntityImpl,对应的数据库表为ACT_RU_TASK.TaskEntityImpl包括以下属性:id:主键,对应ID_字段revision:该数据版本号,对应REV_字段owner:任务拥有人,对应OWNER_字段...

2020-05-02 11:28:03 1562

原创 Activiti(二)--流程存储

Activiti流程存储1 流程文件部署2 流程定义的管理1 流程文件部署1.1 Deployment对象Deployment对象是一个接口,一个Deployment实例表示一条ACT_RE_DEPLOYMENT表的数据,子接口为DeploymentEntity,实现类为DeploymentEntityImpl,其包含以下字段id:主键name:部署名称DeploymentTime: ...

2020-04-30 20:51:32 1078 1

原创 Activiti(一)--数据库表设计

Activiti数据库表设计1 通用数据库表2 流程存储表3 身份数据表4 运行时数据表5 历史数据表6 DMN规则引擎表1 通用数据库表1.1 资源表表ACT GE BYTEARRAY 用于保存与流程引擎相关的资源,只要调用了Activiti 存储服务的API ,涉及的资源均会被转换为byte 数组保存到这个表中。在资源表中设计了一个BYTES宇段,用来保存资源的内容,因此理论上其可以用于...

2020-04-28 22:34:25 1131

原创 访问者模式

访问者模式1 定义2 结构图3 代码实现4 优缺点及适用场景1 定义访问者模式(Visitor Pattern):提供一个作用于某对象结构中的各个元素的操作表示,它使我们可以在不改变个元素的类的前提下定义作用于这些元素的新操作.2 结构图Vistor(抽象访问者):抽象访问者为对象结构中每一个具体元素类ConcreteElement声明一个访问操作,从这个操作的名称或参数类型可以清除知道...

2020-04-05 18:08:59 309

原创 模板方法模式

模板方法模式1 定义2 结构图3 代码实现4 优缺点及适用场景1 定义模板方法模式:定义一个操作算法中框架,而将一些步骤延迟到子类中.模板方法模式使得子类可以不改变一个算法的结构既可定义该算法的某些特定步骤.2 结构图1)AbstractClass(抽象类):在抽象类中定义了一系列基本操作(PrimitiveOperations).这些基本操作可以是具体的,也可以是抽象的,每一个基本操作...

2020-04-05 14:45:42 84

原创 策略模式

策略模式1 定义2 结构图3 代码实现4 优缺点及适用场景1 定义策略模式(Strategy Pattern):定义一系列算法类,将每一个算法封装起来,并让他们可以相互替换,策略模式让算法独立于使用它的客户而变化,也成为政策模式(Policy).2 结构图Context(环境类):环境类是使用算法的角色,它在解决某个问题时可以采用多种策略.在环境中维持一个对抽象策略类的引用实例,用于定义...

2020-04-05 13:16:39 237

原创 状态模式

状态模式1 定义2结构图3 代码实现4 具体案例5 优缺点及适用场景1 定义状态模式(State Pattern):允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了其他的类.2结构图Context(环境类):环境类又称为上下文类,它是拥有多种状态的对象.由于环境类的状态存在多样性且在不同状态下对象的行为有所不同,因此将状态独立出去形成单独的状态类.State(抽象状态类...

2020-04-04 15:34:15 120

原创 观察者模式

观察者模式1 定义2 结构图3 代码实现4 优缺点及适用场景1 定义观察者模式(Observer Pattern):定义对象之间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新.观察者模式的别名包括发布-订阅(Publis/Subscribe)模式,模型-视图(Model/View)模式,源-监听器模式(Source/Listener)或者从属者模式(...

2020-04-03 19:17:33 125

原创 中介者模式

中介者模式1 定义2 中介者模式结构图3 代码实现4 适用场景及优缺点1 定义中介者模式(Mediator Pattern):用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。2 中介者模式结构图3 代码实现4 适用场景及优缺点...

2020-04-03 12:54:29 158

原创 备忘录模式

备忘录模式1 备忘录模式定义2 备忘模式结构图3 代码实现4 优缺点及适用场景1 备忘录模式定义备忘录模式(Memento Pattern):在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态.2 备忘模式结构图Originator(原发器):它是一个普通类,可以创建一个备忘录,并存储它的当前内部状态,也可以使用备忘录来恢复...

2020-04-03 12:53:31 112

原创 迭代器模式

迭代器模式1 定义2 迭代器模式结构图3代码实现4 具体实例1 定义**迭代器模式(Iterator Pattern):**提供一种方法来访问聚合对象,而不用暴露这个对象的内部表示,其别名为游标(Cursor)。迭代器模式是一种对象行为型模式。2 迭代器模式结构图Iterator(抽象迭代器):它定义了访问和遍历元素的接口,声明了用于遍历数据元素的方法,例如:用于获取第一个元素的firs...

2020-03-31 19:34:39 194

原创 activiti部署流程文件

部署流程文件的方法有以下几种 DeploymentBuilder addInputStream(String var1, InputStream var2); DeploymentBuilder addClasspathResource(String var1); DeploymentBuilder addString(String var1, String var2); ...

2020-03-16 20:37:30 418

原创 ajaxfileupload.js与commons-fileupload文件上传

1 commons-fileupload maven依赖<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.2</version&gt...

2020-03-16 20:22:29 198

原创 解释器模式

解释器模式1 定义2 解释器模式结构图3 代码实现4 具体实例5 优缺点及适用场景1 定义解释器模式:定义一个语言的文法,并且建立一个解释器来解释该语言中的句子,这里的"语言"是指适用规定格式和语法的代码.解释器模式是一种类行为型模式.2 解释器模式结构图AbstractExpression(抽象表达式):在抽象表达式中声明了抽象的解释操作,它是所有终结符表达式和非终结符表达式的公共父类...

2020-03-15 19:51:53 82

原创 命令模式

命令模式1 定义2 命令模式结构图3 代码实现4 具体实例5 优缺点及适用场景1 定义命令模式(Command Pattern):将一个请求封装为一个对象,从而让我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是一种对象行为型模式,其别名为动作(Action)模式或事务(Transaction)模式2 命令模式结构图Command(抽象命令类...

2020-03-15 19:51:19 173

原创 职责链模式

职责链模式1 定义2 职责链模式结构图3 代码实现4 优缺点及适用场景1 定义职责链模式(Chain of Responsibility Pattern):避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。2 职责链模式结构图Handler(抽象处理者):它定义了一个处理请求的接口,一般设计为抽象类,由于不...

2020-03-15 19:50:51 108

原创 享元模式

享元模式(Flyweight Pattern):运用共享技术有效的支持大量细粒度对象的复用.系统只是用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用.由于享元模式要求能够共享的对象必须是细粒度的对象,因此它又称轻量级模式,是一种对象结构型模式.例子:如下图所示开发一个围棋软件,棋子的形状,大小都一样,只是位置不通,其效果图如下:代码如下:abstract class I...

2020-03-15 19:50:10 64

原创 外观模式

外观模式:为子系统中的一组接口提供一个统一的入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式中,一个子系统的外部与其内部的通信通过一个统一的外观类进行,外观类将客户类与子系统的内部复杂性分隔开,使得客户类只需要与外观角色打交道,而不需要与子系统内部的很多对象打交道。外观模式结构图:外观模式实现Class SubSystemA{ public void meth...

2020-03-15 19:49:35 101

原创 装饰者模式

装饰模式(Decorator Pattern):动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活。装饰模式是一种对象结构型模式。装饰模式可以在不改变一个对象本身功能的基础上给对象增加额外的新行为,在现实生活中,这种情况也到处存在,例如一张照片,我们可以不改变照片本身,给它增加一个相框,使得它具有防潮的功能,而且用户可以根据需要给它增加不同类型的相框,甚至可以在...

2020-03-04 14:37:13 153

原创 代理模式

代理模式定义:给某一个对象提供一个代理或占位符,并由代理对象来控制对原对象的访问。代理模式是一种对象结构型模式.在代理模式中引入了一个新的代理对象, 代理对象在客户端和目标对象之间起到中介的作用,它去掉客户端不能看到的内容和服务或者增添客户需要的额外的服务.代码示例如下:abstract class Subject{ public abstract void request();}cl...

2020-01-21 16:17:19 135

原创 logback 常用配置详解(三) <filter>

<filter>:过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之一。返回DENY,日志将立即被抛弃不再经过其他过滤器;返回NEUTRAL,有序列表里的下个过滤器过接着处理日志;返回ACCEPT,日志会被立即处理,不再经过剩余过滤器。过滤器被添加到<Appender> 中,为<Appender> 添加一个或多个过滤器后,...

2020-01-18 18:43:54 334

2020个人所得税申报

2020个人所得税申报,

2020-04-14

空空如也

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

TA关注的人

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