自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

风信子

书到用时方恨少

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

转载 JavaEE项目能运行但项目文件夹上有红叉的解决方法

我们导入别人javaEE项目或者在别的电脑上导入项目时,经常发现项目能正常跑起来,但是在项目的根目录上总是会出现红叉,这种情况下,主要有一下几种情况导致,一是Tomcat容器版本有差异此时就需要重新remove并add一下,二是JRE有问题。三是后面说的最后一种解决办法。网上有很多解决此类问题的办法,具体哪一个有用要看实际情况:导入项目之前,请确认工作空间编码已设置为utf-8:windo...

2018-09-27 18:29:14 956

原创 状态模式(State Pattern)

概述当系统中某个对象存在多个状态,这些状态之间可以进行转换,而且对象在不同状态下行为不相同时可以使用状态模式。状态模式将一个对象的状态从该对象中分离出来,封装到专门的状态类中,使得对象状态可以灵活变化。状态模式是一种对象行为型模式。适用场景用于解决系统中复杂对象的多种状态转换以及不同状态下行为的封装问题。简单说就是处理对象的多种状态及其相互转换。UML类图参与者1&gt...

2018-09-25 08:51:09 186

转载 享元模式(Flyweight Pattern)

在阎宏博士的《JAVA与模式》一书中开头是这样描述享元(Flyweight)模式的:Flyweight在拳击比赛中指最轻量级,即“蝇量级”或“雨量级”,这里选择使用“享元模式”的意译,是因为这样更能反映模式的用意。享元模式是对象的结构模式。享元模式以共享的方式高效地支持大量的细粒度对象。Java中的String类型在JAVA语言中,String类型就是使用了享元模式。String对象是fi...

2018-09-23 21:10:07 202

转载 中介者模式(Mediator Pattern)

定义用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互。类型行为类模式类图中介者模式的结构中介者模式又称为调停者模式,从类图中看,共分为3部分:抽象中介者:定义好同事类对象到中介者对象的接口,用于各个同事类之间的通信。一般包括一个或几个抽象的事件方法,并由子类去实现。中介者实现类:从抽象中介...

2018-09-22 10:23:18 208

原创 【面试题】Satement、PreparedStatement和CallableStatement的区别

StatementStatement用于执行不带参数的简单SQL语句,并返回它所生成结果的对象,每次执行SQL语句时,数据库都要编译该SQL语句。下面是一个最简单的SQL语句:Statement stmt = conn.getStatement();stmt.executeUpdate("insert into client values('aa','aaaa')");Prepar...

2018-09-21 11:13:16 562

转载 责任链模式(Chain of Responsibility Pattern)

定义使多个对象都有机会处理请求,从而避免了请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。类型行为类模式类图首先来看一段代码:public void test(int i,Request request) { if(i == 1) { Handler1.response(request);...

2018-09-18 08:56:51 162

原创 【面试题】Collection与Collections的区别

CollectionCollection是java.util下的一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。实现该接口的类主要有List和Set,该接口的设计目标是为各种具体的集合提供最大化的统一的操作方式。CollectionsCollections是java.util下的针对集合类的一个包装类,它提供一系列静态方法以实现对各种集合的搜索、排序、线程安全化等操作,其中...

2018-09-17 12:23:23 309

原创 Java中length与length()的区别

在java中String类可以定义字符串变量和字符串数组,length()用于求String字符串对象的长度,而length用于求String字符串数组的长度。length()是求String字符串对象中字符的个数;length是求字符串数组中有多少个字符串;public class strLen { public static void main(String[] args) {...

2018-09-17 11:06:48 1687

转载 备忘录模式(Memento Pattern)

定义在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态。类型行为类模式类图我们在编程的时候,经常需要保存对象的中间状态,当需要的时候,可以恢复到这个状态。比如,我们使用Eclipse进行编程时,假如编写失误(例如不小心误删除了几行代码),我们希望返回删除前的状态,便可以使用Ctrl+Z来进行返回。这时我们便可以...

2018-09-17 09:04:46 145

转载 【面试题】Java中创建对象的方式有几种?

创建对象的方式 方式 是否调用了构造函数 使用new关键字 是 使用Class类的newInstance方法 是 使用Constructor类的newInstance方法 是 使用clone方法 否 使用反序列化 否 1.使用new关键字这是最常见也是最简单的创建对象的方式了。通过这种方式,我们可以调用任意的构造函数(无参的和带参数...

2018-09-16 11:41:21 3075 4

转载 命令模式(Command Pattern)

定义将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。类型行为类模式类图命令模式的结构顾名思义,命令模式就是对命令的封装,首先来看一下命令模式类图中的基本结构:Command类:是一个抽象类,类中对需要执行的命令进行声明,一般来说要对外公布一个execute方法用来执行命令。Concrete...

2018-09-16 08:28:49 452

原创 【面试题】public/private/protected/default作用域的比较

作用域对比 作用域与可见性 当前类 同一package 子类 其他package public 能 能 能 能 private 能 否 否 否 protected 能 能 能 否 default 能 能 否 否 public 表明该成员变量或方法对所有类或对...

2018-09-15 20:52:58 2624

原创 【面试题】Java中的GC

在Java语言中,垃圾回收(Garbage Collection,GC)是一个非常重要的概念,它主要作用是回收程序中不再使用的内存。在使用C/C++语言进行程序开发时,开发人员必须非常仔细地管理好内存的分配与释放,如果忘记或者错误地释放内存往往会导致程序运行不正常甚至是程序崩溃。Java语言提供了垃圾回收器来自动检测对象的作用域,可自动地把不再被使用的存储空间释放掉。垃圾回收器负责完成3项任务...

2018-09-14 16:29:55 812

原创 【面试题】Java中的基本数据类型

基本数据类型的比较 数据类型 字节长度 范围 默认值 包装类 int 4 (-2^31~2^31-1) 0 Integer short 2 [-32768,32767] 0 Short long 8 (-2^63~2^63-1) 0L或0l Long byte 1 [-12...

2018-09-14 12:15:20 177

转载 访问者模式(Visitor Pattern)

定义封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。类型行为类模式类图访问者模式可能是行为类模式中最复杂的一种模式了,但是这不能成为我们不去掌握它的理由。我们首先来看一个简单的例子,代码如下:class A { public void method1() { System.out.pri...

2018-09-13 09:08:51 112

转载 解释器模式(Interpreter Pattern)

定义给定一种语言,定义他的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子。类型行为类模式类图解释器模式的结构抽象解释器:声明一个所有具体表达式都要实现的抽象接口(或者抽象类),接口中主要是一个interpret()方法,称为解释操作。具体解释任务由它的各个实现类来完成,具体的解释器分别由终结符解释器TerminalExpression和非终结符解释...

2018-09-12 08:46:09 142

转载 迭代器模式(Iterator Pattern)

定义提供一种方法访问一个容器对象中各个元素,而又不暴露该对象的内部细节。类型行为类模式类图如果要问java中使用最多的一种模式,答案不是单例模式,也不是工厂模式,更不是策略模式,而是迭代器模式,先来看一段代码吧:public static void print(Collection coll) { Iterator it = coll.iterator();...

2018-09-11 15:44:00 118

原创 观察者模式(Observer Pattern)

定义定义对象间一种一对多的依赖关系,使得当每一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。类型行为类模式类图在软件系统中经常会有这样的需求:如果一个对象的状态发生改变,某些与它相关的对象也要随之做出相应的变化。比如,我们要设计一个右键菜单的功能,只要在软件的有效区域内点击鼠标右键,就会弹出一个菜单;再比如,我们要设计一个自动部署的功能,就像eclip...

2018-09-10 08:40:01 291

转载 模板方法模式(Template Method Pattern)

定义定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。类型行为类模式类图事实上,模版方法是编程中一个经常用到的模式。先来看一个例子,某日,程序员A拿到一个任务:给定一个整数数组,把数组中的数由小到大排序,然后把排序之后的结果打印出来。经过分析之后,这个任务大体上可分为两部分,排序和打印,打印功能好实现,排序就有...

2018-09-09 08:27:04 692

转载 策略模式(Strategy Pattern)

定义定义一组算法,将每个算法都封装起来,并且使他们之间可以互换。类型行为类模式类图策略模式是对算法的封装,把一系列的算法分别封装到对应的类中,并且这些类实现相同的接口,相互之间可以替换。在前面说过的行为类模式中,有一种模式也是关注对算法的封装——模版方法模式。对照类图可以看到,策略模式与模版方法模式的区别仅仅是多了一个单独的封装类Context,它与模版方法模式的区别在...

2018-09-08 08:39:27 177

原创 Eclipse 常用快捷键

Eclipse 常用快捷键 组合键 功能 Alt + / 起提示作用 选中代码 Alt + 上/下箭头 代码上下移动 Alt + Shift + m  抽取方法 Alt + Shift + r 重命名 Alt + Shift + L 自动生成返回值对象 Alt + Shift + s 自动生成构造方法、get、set方法 Ct...

2018-09-07 10:56:58 205

原创 组合模式(Composite Pattern)

介绍组合模式又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解藕。组合模式可以优化处理递归或分级数据结构.有许多关于分级数据结构的例子,使得组合模式非常有用武之地。类图组成部分Component: 为参加组合的对象声明一个公共接口, 不管是组合还是叶结点.L...

2018-09-07 08:28:38 160

转载 桥接模式(Bridge Pattern)

介绍桥接模式 (Bridge)将抽象部分与实现部分分离,使它们都可以独立的变化。桥接模式是一种结构式模式。结构代码实现Implementor : 定义实现接口。interface Implementor { //实现抽象部分需要的某些具体功能 public void operationImpl();} Abstraction : 定义抽象接口。...

2018-09-06 08:24:13 155

原创 外观模式(Facade Pattern)

定义为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。角色1、外观(Facade)角色 :客户端可以调用这个角色的方法。此角色知晓相关子系统的功能和责任。在正常情况下,本角色会将所有从客户端发来的请求委派到相应的子系统去。2、子系统(SubSystem)角色 :可以同时有一个或者多个子系统。每个子系统都不是一个单独的类,...

2018-09-05 09:20:08 105

原创 代理模式(Proxy Pattern)

目录定义角色分类静态代理动态代理优点缺点定义为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。角色1、抽象角色:声明真实对象和代理对象的共同接口。2、代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相...

2018-09-04 08:53:59 97

原创 装饰者模式(Decorator Pattern)

目录定义角色示例优点缺点装饰者与适配者模式的区别装饰者和继承的区别继承装饰者适用场景定义在不必改变原类文件和原类使用的继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是用装饰来包裹真实的对象来实现。角色抽象构件角色(Project):给出一个接口,以规范准备接收附加责任的对象。具体构件角色(Employee):定...

2018-09-03 10:09:15 102

原创 IntelliJ IDEA 常用快捷键

 组合键 功能 Ctrl + Space 完成类、方法、变量名称的自动输入 Ctrl + N(Ctrl + Shift + N) 跳转到指定的java文件(其它文件) Ctrl + B 跳转到定义处 Ctrl + Alt + T 用if、while、try catch来围绕选中的代码行 Ctrl + Alt + B 跳转到方法实现处 ...

2018-09-02 20:53:18 382

原创 适配器模式(Adapter Pattern)

目录定义角色分类优点缺点适用场景小结定义将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。角色目标(Target)角色:这就是所期待得到的接口,也就是这类的接口是符合我们要求的。源(Adapee)角色:我们要使用的接口,但是这个接口不符合我们的要求,也就是现在需要适配的接口。适配器(A...

2018-09-02 09:57:51 122

原创 【面试题】反射的用途及实现

反射的定义反射(Reflection)是Java 程序开发语言的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操作类或对象的内部属性。简而言之,通过反射,我们可以在运行时获得程序或程序集中每一个类型的成员和成员的信息。程序中一般的对象的类型都是在编译期就确定下来的,而Java反射机制可以动态地创建对象并调用其属性,这样的对象的类型在编译期是未知的。所以我们可以通过反射...

2018-09-01 16:04:47 338

原创 生成器模式(Builder Pattern)

目录定义四个要素示例优点缺点应用场景定义将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。生成器模式利用一个导演者对象和具体建造者对象一个一个地建造出所有的零件,从而建造出完整的对象。四个要素Builder:生成器接口,定义创建一个Product对象所需要的各个部件的操作。ConcreteBuilder:具体的生成器实现,实现各个...

2018-09-01 09:54:21 240

MySQL5.5安装图解

MySQL5.5数据库超详细安装截图教程,数据库初学者必备。

2018-10-07

空空如也

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

TA关注的人

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