自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 Java类加载器

类加载器最初是为了Java Applet的需求而开发,虽然目前applet基本没人用了,但是类加载器却在类层次划分、OSGi、热部署、代码加密等领域大放异彩,成为java领域中一块重要的基石。每个java程序都至少拥有三个类加载器:引导类加载器(Bootstrap Classloader)扩展类加载器(Extension Classloader)应用程序类加载器(Application Cla

2016-12-20 10:04:41 391

原创 JAVA强引用、软引用、弱引用、虚引用小结

JAVA中将引用类型分为强引用、软引用、弱引用和虚引用四种。强引用(StrongReference) 强引用是我们程序中普遍存在的,比如如下代码中的obj和str都是强引用类型。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足的问题。Object ob

2016-12-19 17:00:35 698

原创 JVM内存区域划分

HotSpot作为JDK和OpenJDK的虚拟机,此节所讲的JVM的内存区域划分也是基于HotSpot的。java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干不同的数据区域,这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些则依赖于用户线程的启动和结束而建立和销毁。下图表示了Java虚拟机运行时的数据区域

2016-10-30 23:05:19 2813

原创 浅析volatile关键字

关键字volatile的主要作用是使变量在多个线程可见。

2016-10-30 17:44:07 4246

原创 synchronized知识点小结

Java的多线程编程中常用的关键字是synchronized,当然也经常用到java.util.concurrent.locks包下的一些类,比如ReentrantLock,还有java.util.concurrent.atomic包下的以Atomic开头的类。这个后续有机会再来探讨。

2016-10-30 14:24:48 4657 1

原创 设计模式之访问者模式

访问者模式访问者模式是一种对象行为型模式,,访问者模式就是一种分离对象数据结构与行为的方法,通过这种分离,可达到为一个被访问者动态添加新的操作而无需做其它的修改的效果。定

2016-09-19 16:48:29 3429

原创 设计模式之模板方法模式

模板方法模式模板方法模式是一种类行为型模式,模板方法是一个算法的抽象定义,它逐步地定义该算法,每一步调用一个抽象操作或一个原语操作,子类定义抽象操作以具体实现该算法。

2016-09-19 16:10:39 3188

原创 设计模式之策略模式

策略模式策略模式是一种对象行为型模式,策略模式将算法封装在对象中,这样可以方便地指定和改变一个对象所使用的算法。

2016-09-19 14:50:53 3249

原创 设计模式之状态模式

状态模式状态模式是一种对象行为型模式,它封装一个对象的状态,使得当这个对象的状态对象变化时,该对象可改变它的行为。的

2016-09-19 10:53:18 3165

原创 设计模式之观察者模式

观察者模式观察者模式是一种对象行为型模式,又称发布-订阅模式,依赖模式,其定义了对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新,常用的场景是订阅主题,当主题发生更新了,订阅者就自动获取到更新通知。

2016-09-13 17:23:08 3156

原创 设计模式之备忘录模式

备忘录模式备忘录模式又叫Token,是一种对象行为型模式,在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。以便于回滚恢复到原来的状态,常与命令模式和迭代器模式一起使用

2016-09-13 17:14:14 3228

原创 设计模式之中介者模式

中介者模式中介者模式是用来降低类类之间的耦合的,因为如果类类之间有依赖关系的话,不利于功能的拓展和维护,因为只要修改一个对象,其它关联的对象都得进行修改。如果使用中介者模式,只需关心和Mediator类的关系,具体类类之间的关系及调度交给Mediator就行,这有点像spring容器的作用。

2016-09-13 15:44:39 3172

原创 设计模式之迭代器模式

迭代器模式迭代器模式有叫做游标(Cursor)模式,是一种对象行为型模式,它提供一种方法顺序访问一个聚合对象的各个元素,而不需要暴露该对象的内部表示。

2016-09-13 14:16:38 3177

原创 设计模式之解释器模式

解释器模式解释器模式是一种类行为型模式,它主要是用来解释特定语言的特定文法表示,虽然这个在实际生产中不常用到,但是我们学习一下还是有帮助的。

2016-09-13 11:10:11 3208

原创 设计模式之命令模式

命令模式命令模式是一种对象行为模式,它将请求封装在对象中,这样它就可作为参数来传递,也可以被存储在历史列表里,或者以其他的方式使用,达到解耦的目的。

2016-09-12 11:01:57 3139

原创 设计模式之责任链模式

责任链模式责任链模式使一种对象行为模式,它将多个对象连成一条链,并沿着该链传递请求,链路上的每一个对象都有机会处理这个请求,它提供了一种松耦合的机制。

2016-09-09 15:59:26 3211

原创 设计模式之代理模式

代理模式代理模式中,proxy对象作为其他对象的一个方便的替代或占位符。它的使用可以有多种形式,例如它可以在局部空间中代表一个远程地址空间的对象,也可以表示一个要求被加载的较大的对象,还可以用来保护对敏感对象的访问。代理模式还提供了对对象的一些特有性质的一定程度上的间接访问,从而它可以限制、增强或修改这些性质。

2016-09-09 14:45:49 3391

原创 设计模式之享元模式

享元模式享元模式为了共享对象,这极大地提升了效率和一致性,这里所指的效率是空间的资源。定义 运用共享技术有效地支持大量细粒度的对象

2016-09-08 17:16:19 3053

原创 设计模式之外观模式

外观模式外观模式为子系统中的各类(或结构与方法)提供一个简明一致的界面,隐藏子系统的复杂性,使子系统更加容易使用。

2016-09-08 14:31:14 3137

原创 设计模式之装饰模式

装饰模式装饰模式又称包装器Wrapper,它描述了如何动态地为对象添加职责。装饰模式是一种结构型模式,这一模式采用递归方式组合对象,从而允许你添加任意多的对象职责。装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案,实际上Java 的I/O API就是使用装饰模式实现的。

2016-09-07 16:57:36 3186

原创 设计模式之组合模式

组合模式组合模式是结构型对象模式的一个实例,它描述了如何构造一个类层次式结构,这一结构由两种类型的对象(基元对象和组合对象)所对应的类构成,其中的组合对象使得你可以组合基元对象以及其他的组合对象,从而形成任意复杂的结构。

2016-09-07 15:55:26 3338

原创 设计模式之桥接模式

桥接模式桥接模式是的一种对象结构型模式,它将对象的抽象与实现分离,从而可以独立地改变它们,比如我们在JDBC中用到桥接模式,切换不同类型的数据库,只需要切换不同类型的数据库驱动就可以,而不需要改动太多的代码或者配置。

2016-09-07 14:47:00 3256

原创 设计模式之适配器模式

适配器模式结构型模式涉及到如何组合类和对象以获得更大的结构,适配器模式使结构型模式中的一种,它的目的是要使得一个接口与其他接口兼容,从而给出了多个不同接口的统一抽象,我们在JAVA 的Swing模块中有很多应用了适配器模式的示例。适配器模式中有两种方式,分别是类的适配器模式(采用继承实现)和对象适配器(采用对象组合方式实现)

2016-09-06 15:52:13 3170

原创 设计模式之单例模式

单例模式单例模式,顾名思义就是保证内存中只保留一份对象的实例,因为创建对象开销其实蛮大的,它在实际应用中非常广泛,包括著名的Spring框架等,单例模式有好几种写法,常用的有懒汉式单例、饿汉式单例,分别适用于不同的业务场景。

2016-09-06 10:28:37 3097

原创 设计模式之原型模式

原型模式Prototype原型模式是一种创建型设计模式,Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。

2016-09-05 16:38:10 3081

原创 设计模式之建造者模式

建造者模式我们前面学习了工厂方法模式和抽象工厂模式,知道了对象的创建可以转移到别的类中创建,那么如果要创建比较复杂的对象,但是创建的过程有一定的规律性,比如建房子,搭桥等有一定模式的,那么我们可以用到建造者模式。

2016-08-26 17:01:42 3486

原创 设计模式之抽象工厂模式

抽象工厂模式我们前面讲到了工厂方法模式以及它的升级静态工厂方法模式,可以参考设计模式之工厂方法模式,但是可以发现当我们要扩展程序时,要修改工厂类的方法,这不符合我们在软件开发中的原则,一个优秀的软件系统应该对扩展开放,对修改关闭,所以接下来我们来了解一下抽象工厂模式。

2016-08-26 15:31:18 3594

原创 设计模式之工厂方法模式

工厂方法模式设计模式使人们可以更加简单方便的复用成功的设计和体系结构,设计模式中也遵循着一些原则,而这些原则也是JAVA开发中所提倡的,比如针对接口编程而不是针对实现编程,优先使用对象组合而不是类继承等,总共有六大原则,感兴趣的朋友可以自行深入了解。设计模式总体可分为以下三类 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器

2016-08-24 10:49:15 3624

原创 axis2调用WebService出现Timeout waiting for connection

Axis2调用Webservice的出现Timeout waiting for connection的问题

2016-08-22 11:32:57 8380

原创 完全卸载oracle详细步骤

1、开始->设置->控制面板->管理工具->服务 停止所有Oracle服务。2 、开始->程序->Oracle - OraHome81->Oracle Installation Products-> Universal Installer,单击“卸载产品”-“全部展开”,选中除“OraDb11g_home1”外的全部目录,删除。3、 运行regedit,选择HKEY_LOCAL_M

2016-02-18 15:28:00 3966

原创 JS的问题定位

JS的错误定位一直是令人头疼的事情,IE报的错误往往莫名其妙,如何快速地定位JS错误呢?本文教你快速定位JS错误。JS的问题定位有过js开发经验的人都知道,js是极难定位错误的,总是报一个缺少对象等错误,报出错误的页面和行数又不对,很难作问题定位。在这里我将自己定位JS错误的方法分享给大家。 dom的window对象有一个方法是onerror它可以捕获浏览器的js错误下面是一个问题定位函数: w

2016-02-18 14:44:48 659

原创 JavaScript中的正则表达式简介

JavaScript正则表达式:正则表达式的字面语法格式一个正则表达式的格式如下: /由字符、字符类、特殊字符类、分组符、位置指示符、转义码、重复计量器、可选量符号组成的字符串/正则表达式标记 如:/^(http)[1-3]{2,4}\d\w$/ig 正则表达式标记: 正则表达式位置指示符:规定模式在它所匹配的字符串里的位置。 可以同时使用这两个

2016-02-18 14:34:17 457

原创 JS对象属性使用的问题

JS属性操作的基础知识Js对象的属性是可以动态扩展的譬如:定义了一个js对象,就可以设置它的属性。代码如下: Object.prototype.test = “test1”;//定义一个Object的扩展属性,以后所有的Object都有该属性 Object.test1 = “abc”;//定义一个Ojbect的静态属性 var obj = {};//定义一个Object对象,也可以写为:var

2016-02-18 14:21:40 575

原创 JMS入门_StepByStep

本篇为JMS的学习笔记, 教你一步一步使用JMS,并提供一个能运行的完整的案例,可以使人达到快速入门的目的。JMS(Java Message Service),是Java消息服务,通过JMS,可以在Java对象之间发送消息。JMS消息支持点对点之间的消息发送,也支持主题/订阅方式的消息发送。消息服务由客户和消息代理组成。每位客户都连接到消息服务,客户可以创建消息、发送消息、接收消息、阅读消

2016-02-18 10:42:33 574

空空如也

空空如也

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

TA关注的人

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