自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我是李香兰小朋友的博客

会编程的足球狗

原创 备忘录模式

结构:源发器类(coriginator)            备忘录类(memento)            负责人类(careTake) 核心:就是保存某个对象内部状态的拷贝,这样以后就可以将该对象恢复到原先状态 场景:棋类游戏的悔棋;普通软件中的撤销操作;数据库回滚操作;ps中的历史记录 ...

2017-08-18 08:50:49

阅读数 171

评论数 0

原创 观察者模式(广播机制)

核心:主要用户1:N的通知。当一个对象(目标对象或observable【消息发布】)状态变化,他需要及时告知一系列对象(观察对象,observer【消息订阅】),令他们做出响应 通知观察者的方式:              1:推:每次都会把通知以广播的方式发送给所有的观察者,所有观察者只能被动接...

2017-08-18 08:50:28

阅读数 484

评论数 0

原创 状态模式

核心:用于解决系统中复杂对象的状态转换以及不同状态下行为的封装问题 结构:           context环境类:环境类中维护一个state对象,也是定义当前状态           state抽象状态类:            concretestate具体状态类:每个类封装了一个状...

2017-08-17 11:46:40

阅读数 153

评论数 0

原创 模板方法模式

核心:处理代码步骤中定义好,具体实现延迟到子类中定义 什么时候使用:实现一个算法时,整体步骤很固定,但是某些部分易变,但是易变的可以抽象出来,使子类实现 场景:数据库访问封装;Junit单元测试;hibernate中的模板;spring jdbc template BankTemplateM...

2017-08-17 11:34:47

阅读数 160

评论数 0

原创 策略模式

本质:分离算法,选择实现 场景javase中GUI编程中,布局管理器;spring框架中,resoyrce接口,资源访问策略;javax.servlet.http.httpservlet#service() 例子:比如商城打折,老用户新商品打9折,老用户老商品打8折,新用户新商品减10元,新用...

2017-08-17 11:25:44

阅读数 185

评论数 0

原创 解释器模式和访问者模式(使用较少)

解释器模式: 介绍:当我们开发新的语言时,可以考虑使用解释器模式 场景:EL表达式的处理;正则表达式解释器;SQL语法解释器;数学表达式解释器 访问者模式: 定义:表示一个作用于某个对象结构中的各元素的操作,它使得我们可以再不改变个元素的类前提下定义作用于这些元素的新操作 场景:Xml文...

2017-08-17 10:58:16

阅读数 121

评论数 0

原创 命令者模式(使用较少)

场景:Struct2中,action的整个调用过程;数据库事务机制底层实现;命令的撤销和恢复 Receiver.java(真正命令的执行者)public class Receiver { public void action(){ System.out.println("Rece...

2017-08-17 10:48:05

阅读数 183

评论数 0

原创 中介模式

场景:mvc模式(其中的c,控制器就是一个中介者对象,m,v都和他打交道);java.lang.reflect.Method#invoke() 例子:比如一个公司有市场部,开发部,财务部,之间的沟通就是通过总经理(中介者)来相互调用 Mediator.java(中介者接口) public i...

2017-08-17 10:38:11

阅读数 141

评论数 0

原创 迭代器模式

场景:提供一种可以遍历聚合对象的方式,又称为cursor模式           聚合对象:存储数据           迭代器:遍历数据 MyIterator.java(自定义迭代器接口) public interface MyIterator { void first(); //将游...

2017-08-17 10:05:51

阅读数 113

评论数 0

原创 责任链模式

定义:将能够处理同一类请求的对象连成一条链,所提交的请求沿链传递,能处理的自己处理,不能处理的传递给下一个对象。 场景:java中异常机制try{}catch{};js中时间的冒泡和捕获机制,java语言中事件采取观察者模式;servlet开发中,过滤器的链处理;struct2拦截器的调用也是典...

2017-08-17 09:57:42

阅读数 105

评论数 0

原创 享元模式

场景:如果有很多个完全相同或者相似的对象,我们可以通过享元模式,节省内存。 核心:享元模式以共享方式高效的支持大量细粒度对象重用 应用场景;任何池,String类 例子:比如围棋中,有黑棋白棋,同种颜色的棋子,只有坐标不一样,其他都一样,这是就可以用享元模式 Coordinate.java(外部状...

2017-08-17 09:35:46

阅读数 112

评论数 0

原创 外观模式

迪米特法则(最少知识原则):一个软件实体应当尽可能少的与实体发生作用。 例子:比如公司注册,需要很多过程,自己去各个政府机构签文档,就很多麻烦,这是就需要一个对象,这个对象有注册公司的所有方法,我们就只需调用这个对象的注册方法便完成需求 工商局 public interface 工商局 {...

2017-08-17 09:21:26

阅读数 105

评论数 0

原创 装饰者模式

ICar.java public interface ICar { void move(); } //ConcreteComponent 具体构件角色(真实对象) class Car implements ICar { @Override public void move() { S...

2017-08-16 10:49:15

阅读数 144

评论数 0

原创 组合模式

使用组合模式的场景:把部分和整体的关系用树状结构来表示,从而是客户端可以使用统一的方式处理,部分对象和整体对象 核心: 抽象构件角色:定义好叶子和容器构件的共同点。叶子构件角色:无叶子节点。容器构件角色:有容器特征,可以包含子节点。 以杀毒软件为例: AbstracFile.j...

2017-08-16 10:39:51

阅读数 105

评论数 0

原创 桥接模式

Brand.java(品牌接口类) public interface Brand { void sale(); } class Lenovo implements Brand { @Override public void sale() { System.out.println(&...

2017-08-16 10:26:49

阅读数 195

评论数 0

原创 代理模式之动态代理

Star(接口) public interface Star { /** * 面谈 */ void confer(); /** * 签合同 */ void signContract(); /** * 订票 */ void bookTicket(); /** ...

2017-08-16 10:16:05

阅读数 98

评论数 0

原创 代理模式之静态代理

代理模式:  应用场景: 安全代理:屏蔽对真实角色的直接访问远程代理:通过代理类远程方法调用(RMI)延迟加载:先加载轻量级的代理对象,真正需要再加载真实对象 分类:静态代理(静态定义代理类)           动态代理(动态生成代理类):JDK自带的动态代理,Javaass...

2017-08-16 10:05:10

阅读数 106

评论数 0

原创 适配器模式

Adaptee.java(被适配的类,相当于例子中的,PS/2键盘) public class Adaptee { public void request(){ System.out.println("可以完成客户请求的需要的功能!"); } } Ada...

2017-08-16 09:49:42

阅读数 95

评论数 0

原创 (十三)解析算术表达式

栈:先进后出 中缀表达式:A+B*C 后缀表达式:ABC*+ 1.中缀表达式转后缀表达式 StackX.java(构造一个栈) package JavaAppInFix; /** * 构造一个栈 * @author qingshuang * */ public c...

2017-04-03 16:45:44

阅读数 342

评论数 0

原创 (十二)优先级队列

优先级队列介绍 PriorityQ.java(优先级队列类) package sortedListApp; /** * * 优先级队列 * @author qingshuang * */ public class PriorityQ { pri...

2017-04-03 11:35:15

阅读数 236

评论数 0

原创 (十一)队列

队列的特点先进先出 Queue.java(队列类) package sortedListApp; /** * 队列 * @author qingshuang * */ public class Queue { private long[] queArray;...

2017-04-03 11:30:58

阅读数 156

评论数 0

原创 (十)栈应用实例

1.单词逆序 StackX.java(栈) package JavaApp_StackRB; public class StackX { private int maxSize; private char[] stackArray; private int top; ...

2017-04-02 17:32:57

阅读数 185

评论数 0

原创 (九)数据结构—栈

栈和队列 1.通常情况下作为程序员的工具来运用 2.受限访问 3.更加抽象(通过接口进行定义) 栈就是一组记录,底层用数组或者链表实现,变现形式为先进先出 图片表现形式 java代码表示栈 package sortedListApp; /** * 栈的实现 * @author q...

2017-04-02 15:39:06

阅读数 269

评论数 0

原创 (八)简单排序-对象的插入排序(person)

对象的插入排序(对person类型对象进行插入排序) person.java(对象类) package JavaApp_ObjectSort; public class Person { private String lastName; private String ...

2017-03-31 11:55:05

阅读数 176

评论数 0

原创 (七)简单排序-插入排序

插入排序 ArrayIns.java(插入排序) package JavaApp_inserSort; public class ArrayIns { private long[] a; private int nElems; public ArrayIns(int ...

2017-03-31 10:33:12

阅读数 171

评论数 0

原创 (六)简单排序-选择排序

选择排序 数组类 package JavaApp_SelectsSort; public class ArraySel { private long[] a; private int nElems; public ArraySel(int max){ a=n...

2017-03-31 09:25:18

阅读数 169

评论数 0

原创 (五)简单排序-冒泡排序

冒泡排序 ArrayBub.java package JavaApp_bubbleSort; /** * 冒泡排序 * * @author qingshuang * */ public class ArrayBub { private long[] a; priva...

2017-03-30 15:53:36

阅读数 199

评论数 0

原创 (四)存储对象的数组和大O表示法

存储对象数组 person.java(对象类) package JavaAppClassDataArray; public class Person { private String lastName; private String firstName; private int...

2017-03-30 11:27:23

阅读数 117

评论数 0

原创 (三)有序数组和二分查找法

有序数组二分查找法比较次数 数据量                 所需比较的次数 10                              4 100                            7 1000                         10 10000   ...

2017-03-28 11:10:30

阅读数 176

评论数 0

原创 (二)数组基础知识

一:老式面向过程的数组应用 package JavaApp_Array; /** * 老式面向过程的数组应用 * * @author qingshuang * */ public class ArrayApp { public static void main(String[...

2017-03-27 21:53:08

阅读数 122

评论数 0

原创 (一)数据结构与算法概述

数据结构:对计算机内存中的数据的一种安排。 算法:对结构中数据进行各种处理 应用方面:         1.现实世界数据存储         2.程序员的工具         3.现实世界的建模 数据结构                      优点    ...

2017-03-25 15:23:07

阅读数 303

评论数 0

原创 Java Web day(8)之EL拓展对象JSTL及mcv,javaweb三层框架简介

JSTL 1. jstl的概述   * apache的东西,依赖EL   * 使用jstl需要导入jstl1.2.jar   * 四大库:     > core:核心库,重点     > fmt:格式化:日期、数字     > sql:过时     > xml:过时 ...

2016-12-02 17:35:57

阅读数 329

评论数 0

原创 Java Web day(7)之jsp详解

JSP指令 JSP指令分类   JSP有三大指令:   * page指令   * include指令   * taglib指令   在JSP中没有任何指令是必须的!!!   但基本上每个JSP都是使用page指令!   ===================...

2016-12-02 17:25:37

阅读数 216

评论数 0

原创 Java Web day(6)之jsp&Cookie&HttpSession基础

JSP基础 1. jsp的作用:   * Servlet:     > 缺点:不适合设置html响应体,需要大量的response.getWriter().print("")     > 优点:动态资源,可以编程。   * html:     &...

2016-12-02 14:56:24

阅读数 457

评论数 0

原创 JavaScript入门(三)

1、案例一:在末尾添加节点 第一步:获取到ul标签 第二步:创建li标签 document.createElement("标签名称")方法 第三步:创建文本 document.createTextNode("文本内容"); 第四步:把文本添加到li下面 使...

2016-11-30 17:23:04

阅读数 164

评论数 0

原创 JavaScript入门(二)

1、js的String对象 ** 创建String对象 *** var str = "abc"; ** 方法和属性(文档) *** 属性 length:字符串的长度 *** 方法 (1)与html相关的方法 - bold():加粗 - fontcol...

2016-11-30 16:49:06

阅读数 270

评论数 0

原创 JavaScript入门(一)

1、javascript的简介 * 是基于对象和事件驱动的语言,应用与客户端。 - 基于对象: ** 提供好了很多对象,可以直接拿过来使用 - 事件驱动: ** html做网站静态效果,javascript动态效果 - 客户端:专门指的是浏览器 * js的特点 (1)交互性 - 信息的动态交...

2016-11-30 16:09:03

阅读数 102

评论数 0

原创 css基础入门

CSS 1、css的简介 * css: 层叠样式表 ** 层叠:一层一层的 ** 样式表: 很多的属性和属性值 * 是页面显示效果更加好 * CSS将网页内容和显示样式进行分离,提高了显示功能。 2、css和html的结合方式(四种结合方式) (1)在每个...

2016-11-30 15:34:58

阅读数 114

评论数 0

原创 html基础入门

day01 1、html的简介 * 什么是html? - HyperText Markup Language:超文本标记语言,网页语言 ** 超文本:超出文本的范畴,使用html可以轻松实现这样操作 ** 标记:html所有的操作都是通过标记实现的,标记就是标签, ** 网页语言: * 第一个...

2016-11-30 15:08:09

阅读数 203

评论数 0

原创 Java Web day(5)之Response 与Request详细介绍

服务器处理请求的流程:   服务器每次收到请求时,都会为这个请求开辟一个新的线程。   服务器会把客户端的请求数据封装到request对象中,request就是请求数据的载体!(袋子)   服务器还会创建response对象,这个对象与客户端连接在一起,它可以用来向客户端发送响应。(手机) -...

2016-11-06 23:50:10

阅读数 483

评论数 0

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