自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

柳白的博客

我于人间全无敌,不与天斗与谁斗

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

原创 二十三种设计模式之:(十一)装饰器模式

Decorator 装饰器模式:指在不改变现有对象结构的情况下,动态地给该对象增加一些职责(即增加其额外功能)的模式,它属于对象结构型模式。优点:装饰器是继承的有力补充,比继承灵活,在不改变原有对象的情况下,动态的给一个对象扩展功能,即插即用通过使用不同装饰类及这些装饰类的排列组合,可以实现不同效果装饰器模式完全遵守开闭原则缺点: 装饰模式会增加许多子类,过度使用会增加程序得复杂性。实例: 对已有功能扩展,比如对一个人的姓名字符串添加后缀(只是演示)//父类接口interface P.

2021-02-18 18:21:36 164

原创 二十三种设计模式之:(十) 原型模式

Prototype 原型模式:(实际也叫克隆模式)用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型相同或相似的新对象。在这里,原型实例指定了要创建的对象的种类。用这种方式创建对象非常高效,根本无须知道对象创建的细节原型模式的优点:Java 自带的原型模式基于内存二进制流的复制,在性能上比直接 new 一个对象更加优良可以使用深克隆方式保存对象的状态,使用原型模式将对象复制一份,并将其状态保存起来,简化了创建对象的过程,以便 - 在需要的时候使用(例如恢复到历史某一状态),可辅助实.

2021-02-14 03:31:18 160

原创 二十三种设计模式之:(九) 责任链模式

ChainOfResponsibility 责任链模式:为了避免请求发送者与多个请求处理者耦合在一起,于是将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。【例1】用责任链模式设计一个请假条审批模块。分析:假如规定学生请假小于或等于 2 天,班主任可以批准;小于或等于 7 天,系主任可以批准;小于或等于 10 天,院长可以批准;其他情况不予批准;这个实例适合使用职责链模式实现。首先,定义一个领导类(Leader),它是抽.

2021-02-13 18:54:55 164

原创 二十三种设计模式之:(八)迭代器模式

Iterator 迭代器模式:提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。迭代器模式是一种对象行为型模式优点:访问一个聚合对象的内容而无须暴露它的内部表示。遍历任务交由迭代器完成,这简化了聚合类。它支持以不同方式遍历一个聚合,甚至可以自定义迭代器的子类以支持新的遍历。增加新的聚合类和迭代器类都很方便,无须修改原有代码。封装性良好,为遍历不同的聚合结构提供一个统一的接口。缺点:增加了类的个数,这在一定程度上增加了系统的复杂性。**注:**在日常开发中.

2021-02-13 18:13:51 95

原创 二十三种设计模式之:(七)观察者模式

Observer 观察者模式:指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式、模型-视图模式,它是对象行为型模式。实例:(马老师视频讲解实例)模拟孩子醒了就会哭,哭的话就会触发爸爸妈妈喂他的事件public interface Observer { //观察者接口,如果观察对象触发了,执行下面的方法 void actionOnWakeUp(wakeUpEvent event);}class Chi.

2021-02-13 17:26:37 119

原创 二十三种设计模式之:(六)模板方法模式

TemplateMethod 模板方法模式:定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。它是一种类行为型模式。大白话:去银行办理业务,一共有4个流程: 取号,排队,办理具体业务,对工作人员评价。其中取号,排队,评价是固定的,每个人去银行办理业务都要经历这三个步骤。但是办理具体业务是不同的:有的人取款,有的存款,有的咨询等等。那么就可以定义一个父类(抽象类),把固定的步骤,流程实现了。不能固定的业务逻辑,让子类去实现。实例.

2021-02-13 02:36:36 80

原创 二十三种设计模式之:(五)适配器模式

Adapter 适配器模式:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。适配器模式分为类结构型模式和对象结构型模式两种,前者类之间的耦合度比后者高,且要求程序员了解现有组件库中的相关组件的内部结构,所以应用相对较少些。大白话:说中文的人不能直接跟说英文的人沟通, 那么就需要一个翻译。这个翻译就是适配器。中国220V电压,外国很多都是110V电压,可以用一个变压器转换头。这个变压器转换头就是适配器。类适配器模式:public class Cl.

2021-02-13 02:18:49 80

原创 二十三种设计模式之:(四)Builder 建造者模式

Builder 构建器模式(建造者模式) :指将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示,这样的设计模式被称为建造者模式。它是将一个复杂的对象分解为多个简单的对象,然后一步一步构建而成。它将变与不变相分离,即产品的组成部分是不变的,但每一部分是可以灵活选择的。实例:public class Builder { //我们在使用的使用,用到哪些属性,设置哪些属性就行,不用每个都设置,空的传null。 Person p = new Person.PersonB.

2021-02-13 01:10:01 88

原创 二十三种设计模式之:(三)抽象工厂模式

抽象工厂是对抽象方法模式的一次升级, 抽象方法模式只是对一类产品的生产,比如上节说的animal(动物类), 抽象方法模式则可以对多种产品生产。可以是动物,可以是植物,可以是电子产品等等使用抽象工厂模式一般要满足以下条件。系统中有多个产品族,每个具体工厂创建同一族但属于不同等级结构的产品。系统一次只可能消费其中某一族产品,即同族的产品一起使用。抽象工厂模式除了具有工厂方法模式的优点外,其他主要优点如下。可以在类的内部对产品族中相关联的多等级产品共同管理,而不必专门引入多个新的类来进行管理。当.

2021-02-13 00:45:26 105

原创 二十三种设计模式之:(二)工厂方法

工厂模式的定义:定义一个创建产品对象的工厂接口,将产品对象的实际创建工作推迟到具体子工厂类当中。这满足创建型模式中所要求的“创建与使用相分离”的特点。“工厂方法模式”是对简单工厂模式的进一步抽象化,其好处是可以使系统在不修改原来代码的情况下引进新的产品,即满足开闭原则。简单工厂按实际业务场景划分,工厂模式有 3 种不同的实现方式,分别是简单工厂模式、工厂方法模式和抽象工厂模式。我们把被创建的对象称为“产品”,把创建产品的对象称为“工厂”。如果要创建的产品不多,只要一个工厂类就可以完成,这种模式.

2021-02-12 23:53:29 84

原创 新年新的开始, 立个flag

一转眼2021年了, 回望2020,疫情占据了全部的时间,2020年世界不安宁, 自己过得也是一团糟。无心工作,无心学习。公司拖欠工资, 公积金断交,恰好我又赶上了买房。找领导,找老板谈了一万次,幸好最终结果是完美的。工资补齐了, 公积金贷款也没耽误。其中比较感谢我的直属领导,也一直帮我公积金的事。最终从其他领导那里转到了他的麾下,否则可能我也辞职跳槽了。这都是题外话, 总之,新的一年到了, 要开启新的征程。 技术不能拉下, 工作这么多年,感觉还是码农一枚,没任何长进。 虽然年纪不小了, 但是学习,.

2021-02-02 17:55:44 193 2

转载 Eureka配置详解

Eureka涉及到的参数配置项数量众多,它的很多功能都是通过参数配置来实现的,了解这些参数的含义有助于我们更好的应用Eureka的各种功能,下面对Eureka的配置项做具体介绍,供大家参考。Eureka客户端配置 1、RegistryFetchIntervalSeconds 从eureka服务器注册表中获取注册信息的时间间隔(s),默认为30秒 2、InstanceInfoR...

2019-07-19 09:07:56 331 2

转载 springcloud系列一: 注册中心的选取

springcloud系列一: 注册中心的选取CAP定理CAP定理:指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可同时获得。一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(所有节点在同一时间的数据完全一致,越多节点,数据同步越耗时)可用性(A):负载过...

2019-07-18 19:03:02 3864 1

转载 centos7 安装 Nginx

现在使用springBoot 或者SpringCloud 的项目越来越多,因为在部署的时候,会打包项目为jar包,所以一些静态文件,例如:图片等资源在需要预览操作的时候, 需要安装一个空的应用服务器(tomcat)去查询静态文件。这里可以通过nginx解决这个问题, 服务器安装nginx后,吧服务器当做文件服务器来使用。可以直接访问静态资源文件。安装所需环境Nginx 是 C语言 开发,建...

2019-07-15 10:11:20 170 1

原创 阿里云开启自定义端口

阿里云默认开启 22 端口, 但是我们部署项目需要类似8080 或者 8081等端口, 因此需要我们自定义的开启端口这里讲解的阿里云CentOS7 服务器 通过防火墙开启端口号1、首先查看防火墙是否开启firewall-cmd --state 开启的显示: running如果是关闭状态:可以通过以下命令操作防火墙开启防火墙: systemctl start fire...

2019-06-19 17:50:04 3852 3

转载 springboot打包jar,包括静态资源到jar中

最近项目开发,发现springBoot项目在使用maven打包时,我们静态资源文件都放在resource目录下面,大致如下:在使用maven打包时,发现静态资源没有打进去。原来springBoot默认静态资源路径的时resources.那解决静态资源文件使用maven打包问题的解决方案就有两种了:1.将静态资源文件夹名从resource改为resources2.在工程pom.xml中加...

2019-06-15 14:55:43 8302

原创 jvm系列之一:jvm结构

前言:好久没有写博客了, 去年10月份离职了,接着家里出了一些事情。所以在11月12进入了一家大数据公司,可惜还是做web端开发,没机会学习大数据,但是工作了5天,就被派到上海来出差了,还是长期出差····到现在还没有说过什么时候能回京。算了,天天在酒店住着,也是挺自由,只是公司派我一个人,有点孤单,哈哈 ~~ 最近又有很大的危机感, 老听说裁员的事情,所以还是好好学习,天天向上,时刻准备着找...

2019-03-13 16:31:09 125

转载 Mysql安装图解教程

详细教程:http://www.cnblogs.com/whaben/articles/6687544.html

2018-12-12 14:10:48 303

转载 Linux 常用命令

开关机、重启、注销 shutdown -h now #立即关机 reboot #重启 exit #注销当前用户 上传下载文件,这两个命令需要安装,不是自带的命令yum -y install lrzszrz和sz都只能操作文件,不能操作文件夹rz #上传 sz filename #下载文件 添加、删除用户...

2018-08-17 16:43:17 147 1

原创 Oracle系列三 :Oracle 增删改查

步入正题,大数据项目筹备阶段,我感觉我成数据管理员了, 天天就是各种导数据, 天天写SQL,所以就想多了解一下更深入的知识点。比如:各种优化, 存储过程,触发器,索引等方面的知识 我们循序渐进, 这里先说说《增删改查》首先创建一个测试用表:create table TEST( id VARCHAR2(30), name VARCHAR2(30),...

2018-05-30 11:38:33 10252 3

原创 Oracle系列二 : 配置管理

简介 这里主要讲解四个方面 1、新建表空间,2、新建用户,3、安装Oracle客户端,4、安装PL\Sql developer 以及连接到Oracle服务器,因为都比较简单,所有该篇博客就写的长一点,一次性讲完。。(需要Oracle客户端和PL\Sql developer安装软件的,邮箱发给你< QQ : 1215965557>)1、新建表空间 新建表空间方法...

2018-05-30 10:11:57 1017

转载 Oracle系列一 : 下载安装

简介 前言:今天公司App项目组正式宣布暂停(差不多相当于解散了吧),然后项目组成员被分配到其他项目组里面,有两个方向可以选择:第一,去做公司一个保险项目-感觉都是业务代码的累积,没什么技术含量。第二,跟着公司二把手去调研大数据–但是现在是调研阶段,所以只需要一个技术人员。 本着学习的态度,还是选择了第二个方向。开始我的大数据之旅··· 因为前期只是做些数据采集,数据整合的工作,所以...

2018-04-28 10:34:28 522 1

原创 java 反射技术

简介 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。(来源:百度百科)Class对象的常用方法   方法名 说明 forName() (1)获取Class对象的一个引用,但引用的类还没有加载(该类的...

2018-03-22 13:42:52 292

原创 Map集合之TreeMap

简介 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。(来源:百度百科)Class对象的常用方法   方法名 说明 forName() (1)获取Class对象的一个引用,但引用的类还没有加载(该类的...

2018-03-22 13:41:06 310

转载 Map集合之ConcurrentHashMap

ConcurrentHashMap实现原理及源码分析 ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对HashMap的实现原理还不甚了解,可参考我的另一篇文章HashMap实现原理及源码分析),ConcurrentHashMap在并发编程的场景中使用频率非常之高,本文就来分析下ConcurrentHashMap的实现原理,并对其实现原理...

2018-03-22 13:31:51 245

转载 Map集合之HashTable

第1部分 Hashtable介绍Hashtable 简介和HashMap一样,Hashtable 也是一个散列表,它存储的内容是键值对(key-value)映射。Hashtable 继承于Dictionary,实现了Map、Cloneable、java.io.Serializable接口。Hashtable 的函数都是同步的,这意味着它是线程安全的。它的key、value都不可以...

2018-03-22 09:19:22 208

原创 Map集合之HashMap

简介 key-value 的键值对,key 不允许重复,value 可以严格来说 Map 并不是一个集合,而是两个集合之间 的映射关系。(数组–链表)这两个集合每一条数据通过映射关系,我们可以看成是一条数据。即 Entry(key,value)。Map 可以看成是由多个 Entry 组成。因为 Map 集合即没有实现于 Collection 接口,也没有实现 Iterable ...

2018-03-19 13:36:22 256

原创 Set集合

简介 无序,不可重复的集合HashSet①、HashSet:不能保证元素的顺序;不可重复;不是线程安全的;集合元素可以为 NULL; ②、对于 HashSet: 如果两个对象通过 equals() 方法返回 true,这两个对象的 hashCode 值也应该相同。     1、当向HashSet集合中存入一个元素时,HashSet会先调用该对象的hashCode()方法...

2018-03-13 11:14:33 157

原创 List集合

介绍 List集合代表一个元素有序、可重复的集合,集合中每个元素都有其对应的顺序索引。List集合允许加入重复元素,因为它可以通过索引来访问指定位置的集合元素。List集合默认按元素的添加顺序设置元素的索引, 注意:List中可以有null元素,例如[ tom,null,1 ];1、List 接口的三个典型实现:  ①、List list1 = new ArrayLis...

2018-03-12 18:04:52 529

原创 spring 框架简介与搭建

Spring的一个最大的目的就是使J2EE开发更加容易。同时,Spring之所以与Struts、Hibernate等单层框架不同,是因为Spring致力于提供一个以统一的、高效的方式构造整个应用,并且可以将单层框架以最佳的组合揉和在一起建立一个连贯的体系。可以说Spring是一个提供了更完善开发环境的一个框架,可以为POJO(Plain Old Java Object)对象提供企业级的服务。...

2018-03-06 17:10:33 16708 3

原创 创建Maven Web项目

前言: 现在公司使用的项目,基本都是这种类型: eclipse+maven+svn+各种框架(IDE+maven+版本管理工具+框架),所以这里搭建一个maven web项目,目的是为以后搭建各种spring,springmvc等框架做个基础。eclipse的安装这里也不再赘述,网上直接下载, 绿色版,免安装。maven的安装不会安装的点击:maven安装详解项目...

2018-03-06 13:12:58 1497

原创 java 名词解释

1. 什么是POJOPOJO是Plain Ordinary Java Object的缩写不错,但是它通指没有使用Entity Beans的普通java对象,没有任何有关业务逻辑的实现,可以把POJO作为支持业务逻辑的协助类。POJO的名称有多种,pure old java object (纯java对象)、plain ordinary java object (普通java对象)等。P...

2018-03-06 10:06:36 286

原创 Cookie简介

Cookie技术是客户端的解决方案,Cookie就是由服务器发给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向服务器发送请求的时候都会带上这些特殊的信息。  以下最好都了解下,这样学习更加有逻辑性。知其出现的原因才能更好的知道什么情况下使用 Cookie的运行流程  当在浏览器地址栏中键入了Amazon的URL,浏览器会向Amazon发送一个读取网...

2018-02-08 15:56:45 260

原创 随笔

   本来想写完23种设计模式在学习点新技术呢。但是年底了,年后辞职高峰季,朕也有点动摇了。 奈何工资太低,穷到吃土。所以暂时决定接下来写写面试常常问到的框架,缓存,数据库的东西。 比如:SpringMVC框架, MyBatis框架redis, OScache, MemcacheOracle, MongoDBMQ,Netty等等  工作挣钱,不能太随心了,还是先解决了基本生活问...

2018-02-07 10:21:42 133

原创 二十三种设计模式之:(一)单例模式

Ensure a class only has one instance,and provide a global point of access to it. 保证一个类仅有一个实例,并提供一个访问它的全局访问点。优点:它能够避免实例对象的重复创建,不仅可以减少每次创建对象的时间开销,还可以节约内存空间;能够避免由于操作多个实例导致的逻辑错误。如果一个对象有可能贯穿整个应用程序,

2018-02-05 09:32:33 169

转载 markdown有的功能展示

Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件- 丰富的快捷键快捷键加粗 Ctrl + B斜体 Ctrl + I引用 Ctrl + Q插入链接 Ctrl + L插入代码 Ctrl + K插入图片 Ctrl + G提升标题 Ctrl + H有序列

2018-01-31 09:43:04 749 1

原创 二十三种设计模式简介

23种设计模式总的来说可以分为三大类,遵循六大原则1、三大类1、 创建型 涉及对象的实例化,特点是不让用户代码依赖于对象的创建或排列方式,避免用户直接使用new创建对象。共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式2、 结构型 结构型涉及如何组合类和对象以形成更大的结构,和类有关的结构型模式涉及如何合理使用继承机制;和对象有关的结...

2018-01-30 16:01:57 285

原创 多线程简介---------------待续

1、多线程与高并发## “高并发和多线程”总是被一起提起,给人感觉两者好像相等,实则 高并发 ≠ 多线程 高并发是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问或者socket端口集中性收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会导致系统在这段时间内执行大量操作,例如对资源的请求,数据库的操作等。如果高并

2018-01-30 15:30:42 132

转载 mongodb教程

特别全的教程MongoDB全教程地址

2018-01-30 13:29:27 150

原创 集合简介

介绍 1、集合类存放的都是对象的引用,而非对象本身,出于表达上的便利,我们称集合中的对象就是指集合中对象的引用。先介绍一下顶层接口,接下来详细介绍List,Set,Map。下面将贴出源码,可以参考下,理解起来比较有逻辑性,不想看源码,可以直接跳到下面对各个集合的介绍Iterable 集合和Map的顶层父类,里面有Iterator<T> iterator()...

2018-01-08 10:45:44 269

SpringWebProject

简单搭建的Spring框架,只是简单的配置,如有兴趣,可以看看

2018-03-06

空空如也

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

TA关注的人

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