自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

innerpeacez成长之路

日拱一足,不期速成

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

原创 Java设计模式(19)之备忘录模式

备忘录模式在不破坏封装性的前提下,保存一个对象需要保存的内部状态,并且在这个对象之外的地方将这些内部状态保存起来。当这个对象需要回归原来的状态时,可以通过保存起来的状态恢复到原来的状态。当你可能需要将对象的状态恢复到原来的状态时,就可以使用备忘录模式。类型:行为型模式(类的状态的行为型模式)备忘录模式的几个角色:发起者对象(Originator):创建Memento对...

2018-03-31 13:50:17 280 1

原创 Java设计模式(18)之命令模式

命令模式将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。命令模式通过这种封装的方式实现将客户端和接收端解耦。类型:行为型模式(类与类之间的行为型模式)命令模式的几个角色:抽象命令接口Command:定义命令的接口,声明执行的方法。具体的命令对象ConcreteCommand:持有具体的接受者对象,完成具体的具体的命...

2018-03-30 15:10:12 6711 4

原创 Java设计模式(17)之责任链模式

责任链模式客户端将请求发送到一组责任链中,责任链中的多个处理器依次处理,如A处理器先处理,没有处理,则B处理器开始处理,依次类推,处理完成之后交由请求接受者,客户并不知道具体是哪个处理器处理了请求,从而实现了客户端与请求接受者之间的解耦。当你想要让多个对象有机会处理同一个请求的时候,就可以使用责任链模式。类型:行为型模式(类与类之间的行为型模式)责任链模式中的角色:抽...

2018-03-29 12:45:40 315

原创 Java设计模式(16)之迭代器模式

迭代器模式提供一种方法顺序的访问一个聚合对象(数组,堆栈,列表,散列表等)中的各个元素,而不暴露其内部的表示。类型:行为型模式(类与类之间的行为型模式)迭代器模式的几个角色:抽象容器类:定义具体容器中的方法具体容器类:用来存放聚合对象中的元素抽象迭代器:提供一种方式,使得实现了此接口的聚合对象通过迭代的方式遍历元素具体聚合对象:数组,堆栈,列表等迭代器...

2018-03-28 11:27:02 312

原创 Java设计模式(15)之观察者模式

观察者模式观察者模式又叫(发布-订阅)模式,观察者通过监听某个主题,一旦主题的状态发生改变,则自动通知观察者。类型:行为型模式(类与类之间的行为型模式)观察者模式中设计的角色:抽象主题(Subject):定义具体主题所需的注册,删除和通知观察者的方法接口。具体主题(具体被观察者):具体主题的状态发生改变时,则通知这个主题的观察者。抽象观察者(Observer):得...

2018-03-26 15:05:53 192

原创 Java设计模式(14)之模板方法模式

模板方法模式准备一个抽象类,提供一个模板方法去实现顶级逻辑,这个抽象类可以实现一些通用的具体逻辑,同时声明一些抽象方法由子类去实现这些基本方法,再者这个抽象类可以提供一种hook机制,这种hook机制使得模板方法更加的灵活。类型:行为型模式(父类与子类之间的行为型模式)模板方法的几个角色:AbstractTemplate:抽象模板,定义模板方法,同时暴露具体算法的抽象...

2018-03-24 12:32:34 195 1

原创 行为型模式分析

行为型模式可以分为以下四类:父类与子类两个类之间类的状态通过中间类如下图:

2018-03-23 11:26:42 297

原创 Java设计模式(13)之策略模式

个人感想:今天开始学习第一种行为型模式,加油!!!策略模式准备一组同一类的算法,并且将每个算法封装到具有共同接口的独立的类中,从而使得客户端可以灵活的进行算法的切换,客户端自行决定使用哪种算法。类型:行为型模式(父类与子类之间的行为型模式)策略模式涉及到三个角色:环境(Context) 对象:持有一个Strategy的引用,并根据具体情况执行具体策略。抽象策...

2018-03-23 11:14:45 274

原创 Java设计模式(12)之享元模式

享元模式享元模式又称为轻量级模式,享元模式通过资源共享的方式,实现大量细粒度对象的复用,从而减少同类对象的多次创建,减少内存的占用和提高程序的运行速度。类型:结构型模式享元模式的状态:内部状态/内蕴状态(Internal State):内部状态都存储在享元对象的内部,并且不会随着环境的改变而改变,内部状态便是可以共享的状态,一般通过构造方法或者setter方法传入。...

2018-03-22 16:54:16 187

原创 fastdfs-nginx-module和Nginx配置

fastdfs-nginx-module和Nginx配置下载好nginx:http://nginx.org/en/download.html 下载好fastdfs-nginx-module:https://github.com/happyfish100/fastdfs-nginx-module将下载好的压缩包解压好安装fastdfs-nginx-module进入fastdfs...

2018-03-21 19:50:28 9529 4

原创 Java设计模式(11)之组合模式

组合模式又叫(部分–整体)模式,是用于把一组相似的对象当作一个单一的对象来处理,从而方便操作。组合模式依据树形结构来组合对象,从而表示部分以及整体层次。组合模式使得用户可以使用一致的方法操作单个对象和组合对象。类型:结构型模式组合模式的角色:Component:一组对象抽象的定义Composite:容器结构Leaf:叶子结构Client:客户类组合模式...

2018-03-21 17:05:27 278

原创 CentOS安装FastDFS

CentOS 安装FastDFS最小型的FastDFS,在同一台虚拟机上安装。首先:下载libfastcommon – https://github.com/happyfish100/libfastcommon下载FastDFS – https://github.com/happyfish100/fastdfs/将下载好的文件解压好注意:安装fastd...

2018-03-20 21:55:55 264

原创 Java设计模式(10)之桥接模式

桥接模式将抽象部分与具体实现部分分离,使它们都可以独立地变化。帮助理解:具体的实现系统可从多个维度分类,桥接模式将多个维度抽象出来,多个维度可以独立变化,再进行聚合,将多个维度组合起来使用,减少了各维度间的耦合。举个例子帮助理解:如果我们想要自己组装一台电脑,我们需要购买CPU、显卡、内存条、显示器;而往往这些东西不可能是一个厂商生产的,我们买来的电脑框架提供了插入这些组件的各...

2018-03-20 11:09:58 198

原创 Java设计模式(9)之外观模式

外观模式:客户端访问子系统,需要通过外观对象,外观对象为各个子系统中的各种功能提供一个一致的界面,外观模式相当于定义了一个接口,这个接口使得这些子系统更加容易使用。类型:结构型模式外观模式的3个角色:客户端Client:访问子系统,需要通过外观对象。外观对象Façade:为客户端访问子系统提供一个统一的入口。子系统Modules: 每个子系统有各自特有的功能。...

2018-03-19 11:50:29 165

原创 Java设计模式(8)之代理模式

代理模式:为真实对象提供一种代理以便控制对这个真实的访问。使用代理对象完成用户请求,屏蔽用户对真实对象的访问。类型:结构型模式代理模式的角色:源接口(Component):定义代理类和被代理类的公共对外方法。被代理类/真实对象(Source):只有代理对象才能访问。代理类(Proxy):访问真实对象。客户端(ProxyTest):客户端访问真实对象前,需要进行权...

2018-03-17 20:20:40 228

原创 com.alibaba.com.caucho.hessian.io.SerializerFactory.getDeserializer Hessian/Burlap: 'com.github.page

今天使用pagehelper的时候一直出现如下警告,但是系统依旧可以正常使用。警告 [New I/O worker #1] com.alibaba.com.caucho.hessian.io.SerializerFactory.getDeserializer Hessian/Burlap: 'com.github.pagehelper.Page' is an unknown class in ...

2018-03-17 17:49:22 7851

原创 Java设计模式(7)之装饰者模式

装饰者模式顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,通俗一点就是我们现在突然需要给某个已经打包好的类的方法进行增强,不能修改原有的代码,此时我们就可以使用装饰者模式,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例类型:结构型模式装饰者模式的三个对象:被装饰类(Source)被装饰类实现的接口(Component)装饰者类...

2018-03-16 18:48:57 236

原创 Java设计模式(6)之适配器模式

个人感想:今天开始学习第一种结构型模式了,加油!!!适配器模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。类型:结构型模式适配器模式的角色:目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。需要适配的类(Adaptee):需要适配的类或适配者类。适配器...

2018-03-15 17:14:22 213

原创 SpringBoot整合MyBatis,MySql之从前台页面到数据库的小Demo

结构图:pom.xml文件引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> &...

2018-03-15 10:05:02 1143 1

原创 Java设计模式(5)之原型模式

原型模式:顾名思义。将一个对象当作原型,通过对象克隆的方式复制,创建出更多与原型对象相同类型的对象。类型:创建型模式原型对象关系图:原型对象的3个角色:客户(Client)角色:客户类提出创建对象的请求。抽象原型(Prototype)角色:这是一个抽象角色,通常由一个Java接口或Java抽象类实现。此角色给出所有的具体原型类所需的接口。具体原型(Co...

2018-03-14 20:16:56 392

原创 Mabatis逆向工程

本文的来历:今天弄了一下Mybatis的逆向工程,下载资源的时候,发现好多CSDN上的都需要积分,因为CSDN上传资源最低是2积分,但是本人没有积分:),为了方便小伙伴们学习,所以写了一下,给大家下载。逆向工程代码码云地址:逆向工程源码 里面已经包含了所需的jar包了逆向工程简介:mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动...

2018-03-13 18:40:22 458

原创 Java设计模式(4)之建造者模式

建造者模式:将一个复杂对象的构建过程与它的内部属性填充分离,从而可以使用同一个构建过程建造出不同的产品。分类:创建型模式结构:Product:产品类,便于具体建造者进行建造,一般产品类是多种具体产品的共性;Director:指挥者,利用具体建造者创建具体的产品,并且对具体产品的组成部分进行构建;AbstractBuilder:抽象建造者,定义抽象的建造方法,用以规...

2018-03-13 14:23:03 203

原创 Spring AOP是如何工作的之AnnotationAwareAspectJAutoProxyCreator类源码解析

AnnotationAwareAspectJAutoProxyCreator类的层级结构图: 通过上图可以看到AnnotationAwareAspectJAutoProxyCreator实现了BeanPostProcessor接口,所以Spring 在加载AnnotationAwareAspectJAutoProxyCreator类的Bean对象的时候会在实例化之前调用postProcess...

2018-03-12 19:37:10 2096

原创 Java设计模式(3)之单例模式

单例模式保证在同一个JVM中,同一个对象只存在一个实例。类型:创建型模式单例模式分为以下两种主流的形式:懒汉模式饿汗模式两种形式的区别:懒汉模式,在调用实例方法的时候才会实例化对象;饿汉模式在单例类被加载时候,就实例化一个对象交给自己的引用。饿汉模式不存在线程安全问题,懒汉模式需要考虑线程安全问题。饿汉模式示例:/** * Cre...

2018-03-12 14:03:02 214 5

原创 配置Spring AOP aspectj-autoproxy标签源码解析

配置AOP标签在配置文件中配置了以下标签,即可开启AOP:<aop:aspectj-autoproxy />此标签有以下两个属性:<aop:aspectj-autoproxy proxy-target-class="false" expose-proxy="false"/>开启AOP之后:会使用AspectJAutoProxyBeanDefini...

2018-03-10 19:35:08 2562

原创 Java设计模式(2)之抽象工厂模式

抽象工厂模式抽象工厂模式是工厂模式的一种演进形式,因为工厂模式存在一个问题,虽然类的创建交给了工厂,但是类的创建依然依赖于工厂类,就是说,如果先要拓展功能就必须对工厂类进行修改,依然需要改变源码,这不符合包庇原则,所以就有了抽象工厂的概念抽象工厂模式:创建多个工厂类,如果需要增加新的功能,就再增加一个工厂类完成新的功能,这样就不需要修改之前的代码了。类型:创建型模式关系图...

2018-03-10 10:12:33 206

原创 Java设计模式(1)之工厂模式

作用:工厂模式主要是为了将创建对象的过程交给工厂,降低代码侵入性,降低耦合度。类型:创建型模式工厂模式分为三类:1、 普通工厂模式 2、 工厂方法模式 3、 静态工厂方法模式关系图:1、普通工厂模式:创建People接口:/** * Create by zhaihongwei on 2018/3/9 */public inte...

2018-03-09 13:08:18 278

原创 SpringAOP基本概念和示例DEMO

AOPAOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过OOP允许开发者定义纵向的关系,但并不适合定义横向的关系,例如日志功能。日志代码往往横向地散布在所有对象层次中,而与它对...

2018-03-08 17:22:42 174

原创 设计模式

设计模式的分类及目的创建型(Creational)模式:与对象的创建有关 结构型(Structural)模式:处理类或对象的组合 行为型(Behavioral)模式:对类或对象怎样交互和怎样分配职责进行描述创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。 结构型模式:适配器模式、桥接模式、装饰者模式、组合模式、外观模式、享元模式、代理模式。 行为型模式:...

2018-03-08 11:34:06 290

原创 数据库事务

数据库事务的4个特性原子性,一致性,隔离性,持久性原子性:一个事务中,多个数据库操作是一个不可分割的原子单元,要么操作全都执行成功,事务提交,只要有一个操作发生异常,已经执行的所有操作都进行事务回滚操作,简而言之:要么全部成功,要么全部失败。一致性:一个事务执行完成之后,提交到数据库中的状态保持一致,数据不被破坏。例如:从A账户转账100元到B帐户,不管操作成功与否,A...

2018-03-07 17:16:57 873

原创 Redis命令--二

Redis 发布订阅命令序号 命令及描述1 PSUBSCRIBE pattern [pattern ...] 订阅一个或多个符合给定模式的频道。2 PUBSUB subcommand [argument [argument ...]] 查看订阅与发布系统状态。3 PUBLISH channel mes...

2018-03-01 10:06:20 118

ik-analyzer-solr5-5.x

solr在使用ik分词器是,5.x以上必须要使用ik-analyzer-solr5-5.x.jar这个jar包才能生效

2018-04-23

空空如也

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

TA关注的人

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