- 博客(41)
- 收藏
- 关注
原创 java.net.SocketException: Broken pipe
客户端抛出java.net.SocketException: Broken pipe这个异常意思是链接管道被破坏,也就是说链接被关了,可能是服务端有一个链接时效timeout,如果没有消息交互,则断开链接...
2012-05-29 10:24:13 884
原创 FlashBuilder找不到flash player调试器
C:\Windows\System32\Macromed\Flash里面的东西全删了安装E:\Program Files\adobe\Adobe Flash Builder 4\player\win下的Install Flash Player 10 Plugin.exe即可
2012-02-14 16:26:09 161
原创 JVM之CPU分析
一个load飙高的过程分析,非常有价值。 http://blog.csdn.net/axman/article/details/7104819 分类: 手记 故障分析 2011-12-27 11:50 2592人阅读 评论(3) 收藏 举报 ae的多语言应用中不断出现load飙高的情况 ,即使重启过10几个小时以后,cpu慢慢从1核到4核到被吃光。 而且集群中8台机器都是如此,所以应用方自己...
2012-01-03 22:33:34 477
原创 java读取文件最好用流,避免乱码
//放在resin下,会引起乱码(resin容器和文件本身都是utf-8编码的)BufferedReader br = new BufferedReader(new FileReader(new File(filepath))); //用流读取,这样可以避免乱码BufferedReader br = new BufferedReader(new InputStreamReade...
2012-01-02 13:47:22 157
原创 x-flash-version header
为了排除某些错误,用HttpAnalyzer V6截包,发现Header里面有个x-flash-version:11,1,102,55,这说明是来自flash的http请求,进而定位了错误的地方。
2011-12-03 10:56:31 425
原创 setCombinerClass一般不加(Hadoop的MapReduce应用)
job.setCombinerClass(FirstReducer.class);job.setReducerClass(FirstReducer.class);setCombinerClass一般不加,否则在FirstReducer循环Iterable it会为空
2011-11-10 13:42:23 303
原创 MessagePack果然更快更小
MessagePack果然更快更小,先注册javabean类会更快MessagePack.register(PersonsBean.class);反序列化时再MessagePack.unpack(data).convert(PersonsBean.class);比probuf还快还小
2011-09-08 09:34:01 202
原创 hibernate二级缓存BUG
package org.hibernate.cache下StandardQueryCache的public List get()函数添加代码if(cacheable.size()
2011-05-23 17:02:04 124
原创 java.util.HashMap cannot be cast to org.hibernate.cache.entry.CacheEntry
hibernate二级缓存,每个服务点的domain的读写策略配置要一样!一致为read-write或者一致为read-only
2011-05-06 12:12:55 242
原创 struts2和OpenSessionInViewFilter过滤器异常:org.hibernate.LazyInitializationException
struts2和OpenSessionInViewFilter过滤器异常:org.hibernate.LazyInitializationExceptionOpenSessionInViewFilter要放struts2核心过滤器前面
2010-11-01 21:59:47 107
关于联通Myunix系统,数据库设计的设想
联通myuni系统 www.myuni.com.cn 其登陆功能,看似简单,但是联通的用户全国有几亿,如果要在几秒的时间内登陆成功,数据库设计部分如果安装常规的设计是行不通的(而这个系统确实可以在几秒之内登陆成功)。下面是我个人的一点想法: 基本思想就是裁表。把用户表(主键为号码)根据号码的特点进行裁分,例如有号码100到300,那么可以把这个范围的数字裁成4部分,100-150,对应表名为1...
2008-10-06 18:37:39 218
hibernate零散经验整理
基本上都是以前看书后写下的笔记和实践操作的记录。 一、关于查询迭代函数list.iterator(),Query.iterate()的比较用hibernate进行查询,然后对查询结果进行迭代,有两种实现方法:1、List ls = session.createQuery("...").list();Iterator iter = ls.iterator();while(iter.hasNext...
2008-07-31 22:11:01 117
hibernate持久化对象操作
闲着没事做,整理了hibernate持久化对象操作相关内容,供大家参考。 一、由session缓存清理操作引起的问题(一)session在一下不同的情况下进行清理操作:1、在查询执行之前,如果发现缓存中的持久化对象属性发生了变化,session会先执行清理,保证查询的数据不脏数据。2、在调用事务提交commit()的时候,commit()方法先清理缓存,然后再向数据库提交事务3、调用sessi...
2008-07-31 22:07:45 562
hibernate的映射处理
最近闲着没事,就整理了hibernate的一些东西,供大家参考。一、一对一关联在hibernate中的实现一对一关联有两种实现方法:主键关联和外键关联。主键关联是使两个表共享一个主键。比如,有表A和B,表A的主键为aid,那么表B就把A的主键aid同时作为主键和外键使用。A的映射文件:<class name="A" table="A"> <id nam...
2008-07-31 13:35:46 116
NULL Object空对象模式
NULL Object空对象模式:当你在处理可能会出现null的对象时,可能要产生相对乏味的代码来做相应的处理,使用空对象模式可以接受null,并返回相应的信息。 空对象模式通常会作为一个单独的空对象类,封装一个默认的行为。Interface Log{public void log();}class FileLog extends Log{public void log(...
2008-07-18 17:09:51 329
proxy代理模式
proxy代理模式,其意图是"为其他对象提供一种代理以控制对这个对象的访问",通俗的讲就是,一个类A请一个代言人C去跟另一个类B打交道。在"四人帮"的《设计模式》中代理一章有关代理的"动机"的那节,举文档编辑器加载图像为例,说得很形象、透彻。 根据不同的用途,proxy代理模式又可以分为:远程代理、虚代理、访问控制(保护)代理、引用代理、审计代理、同步化代理、copy-on...
2008-07-11 14:15:58 166
visitor访问者模式
visitor访问者模式的意图,在《设计模式》里这样描述:“表示一个作用于某个对象结构中的各元素的操作。它使可以在不改变各元素的类的前提下定义作用于这些元素的新操作。”。就是说:在坚持“开闭原则”的情况下,访问者可以用来扩展一个现有的类层次结构来实现新的行为。更通俗的讲,如果不愿意修改类层次结构内部代码或者类层次结构的代码难以修改的情况下,如果该类层次结构在设计实现时使用了visito...
2008-07-06 18:23:17 238
command命令模式
command命令模式,将请求封装成对象,通过对象的形式来实现对请求的控制,例如排序、执行和取消等。 command命令模式也是一个遵循开闭原则的模式,避免了传统的if else的硬代码,又可以容易地把新的命令加入系统。 先声明一个公共接口,各个命令各自实现该接口。要使用该命令时,触发该命令或者向命令的使用者注册该命令,执行相应的方法即可。 使用...
2008-06-23 22:13:51 160
template method模版方法模式
template method模版方法模式,说白了,就是抽象类的运用。模版方法模式很多时候都在用,利用该模式可以实现提高代码的复用率。它把各子类相同的方法放在抽象类,避免了编写重复的代码,而其他可变的方法强制型地在各子类各自实现,实现代码规范性。 在我们使用的一些软件包的时候,有一些要求我们继承其某个类,并实现其方法,例如struts的Action,要求实现execute方法...
2008-06-23 17:49:57 87
state状态模式
state状态模式,在代码的结构上跟策略模式没什么区别,只是它们的应用则重点不同。一个对象的行为依赖以一些状态的变化而随之变化,一种传统的做法就是if else的条件判定硬代码,这样的代码级不美观,也不好扩展维护。采用state状态模式就是把各个不同状态的所以执行的代码分别放到不同的类中。...
2008-06-22 22:40:03 126
strategy策略模式
strategy策略模式,策略即算法,策略模式是对算法的封装,把使用算法的使用者和算法本身分割开,分派给不同的对象管理。一系列的算法封装到一系列的策略类里面,作为一个抽象策略类的子类或接口的实现类。换句话说:就是准备一组算法,当条件或环境变化,需要不同的算法时,则向算法的使用者注册该算法,使得其可以在使用者的内部使用该算法。 传统的作法,是使用if else语句在方法中实现并...
2008-06-13 20:08:44 146
observer观察者模式
observer观察者模式,取名为观察者可能会让人费解,该模式的思想跟订阅/发布服务的思想是相近的,所以称为订阅/发布模式更为通俗贴切。 存在着这样的类:类A的某个状态发生改变,或者触发了某个事件,会影响到其他的n个类(一般是实现了相同的接口)的状态;或者n个类的某些状态是在某一时刻内“同时”发生的。一种不明智的作法就是,在类A中编写硬代码,如果n增加了,就要向类A添加相应的...
2008-06-11 10:50:04 109
poi的一个让人失望的bug
用poi读取ws的ppt文件时,会抛出Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8的异常。(使用版本poi-3.0.2)。 解决办法是,打开项目的properties->java build path->order and export,发现poi放到了最后,把poi...
2008-06-09 14:57:38 631
memento备忘录模式
memento备忘录模式,就是利用平常所说的备忘录的思想,把一些可能在以后要用到的东西先记起来,等到要用的时候就可以查询备忘录,再次利用。在软件设计中就是将对象的状态存储起来,根据需要,这个对象只要向备忘录发出一个请求就能够从备忘录读取数据并恢复到先前的状态。 既然是备忘录就会有一个或以上的信息来源,一条或以上的记录和一个记录集(记录管理)。需要存储信息的对象就是信息的来源。 ...
2008-06-08 21:34:18 145
mediator中介者模式
mediator中介者模式,用来管理很多对象之间的相互作用,将一系列对象中对象之间传递消息的细节封装在一个独立的类中,从而减少这些对象之间直接交互所带来的复杂度,和集成测试的难度。 mediator中介者模式,是用在这种情况下的,有n个对象,他们之间形成了复杂的相互引用的关系,在最坏的情况下,可能形成了n*(n-1)/2的关系链,随着n的增大,n*(n-1)/2也就随...
2008-06-03 00:32:12 105
interator迭代模式
interator迭代模式,学过数据结构的,都知道迭代是怎么一回事,最简单的链表也是用到迭代来一个一个地读取数据。利用迭代模式来读取一系列按一定规则来存储的数据,而你不必理会封装的数据存储的结构是怎么样的,一般都会提供一个叫next的函数,要读取数据,只要next个若干次就行了。 如果原本是对List编码的,但后来要修改为Set,如果你在读取元素的地方使用了Iterator...
2008-05-31 10:13:39 116
ChainOfResponsiblity责任链模式
ChainOfResponsiblity责任链模式。 一系列对象之间的消息传递形成了线性的或循环的传递结构,例如A可以传给B,B可以传给C,C可以传给D……当条件不满足传递时,就停止传递。 例如,客户端对象发出一个请求给服务端处理,而客户端只知道服务端有n个服务对象可以对这个请求作出响应,但是客户端并不清楚哪个服务端对象是最合适处理这个请求的。最原始的处理方式,就是在客户端程序...
2008-05-27 17:04:47 184
facade外观模式
facade外观模式,简单明了的讲是,子系统封装聚集模式。facade外观模式遵循了迪米特法则,体现了松耦合原则。facade所面对的往往是多个类或其它程序单元,通过重新组合各类及程序单元,对外提供统一的接口,以便维护管理,减少复杂度和依赖性。 facade外观模式有点像数据库中视图的味道。在数据库中的视图对n个表的组合,客户端程序通过访问数据库的视图,而不必直接访问表,这样...
2008-05-25 00:36:50 111
flyweight享元模式
flyweight享元模式是实现对象的共享,减少重复数据的存储,从而减少内存分配的开销。享元模式融合了工厂模式和单例模式的思想,实际上也可以说享元模式是特殊的工厂模式。 如果要创建同个对象的n个实例,而通常这n个实例中的m个属性的值大部分或全部是相同的,那么最坏的情况就会有n*m个相同的数据占据了不同的内存空间,如果n*m的值较大的话,就可以考虑flyweight享元模式了...
2008-05-24 00:35:46 116
composite合成模式
composite合成模式可以使用户对象以同样的方式对待单独的对象或复合的对象,合成模式要设计一个公共接口,即可提供给单独的对象使用,也可以供给复合对象使用。 使得用户类一致地使用单独的对象或者复合的对象,也不必关系要如何处理复合对象,只需要向复合对象添加单独对象即可。 junit的Test接口的两个子类TestCase和TestSuite就是使用了合成模式。 ...
2008-05-21 14:37:03 113
bridge桥接模式
bridge桥接模式的目的和decorator装饰器模式是一样的,都是避免过多的子类,只是它们的实现的方法有所不同,桥接模式采用聚合的方式来实现。要对类的功能进行扩展,可以修改现有的代码来做,但是如果一个父类的n个子类都要该功能,那么就得修改n次,不但工作量大而且重复代码量很多。这也违反了面向对象的开放/封闭原则(对扩展来说是开放的,对修改来说是封闭的)。在前面的《decorator装...
2008-05-21 14:06:45 150
decorator装饰器模式
decorator装饰器模式,动态地扩展一个对象的功能,而不需要改变原始的类代码或使用继承。是通过创建一个跟目的类同一等级(继承目的类的父类)的称为装饰器的封装对象来实现的。要新添加的功能类继承这个装饰器,这样用户类可以像使用原来的类那样使用新添加的功能类。 decorator装饰器模式可以动态地添加功能,也可以动态地撤销功能。如果一个父类的n个子类,都需要有一个或若干个功能,而它们...
2008-05-21 00:45:27 144
adapter适配器模式
adapter适配器模式,目的在于扩展。是在原系统上进行扩展时用到的方法。 adapter适配器模式,个人认为在其名前加两个字,命名为接口适配模式。其用意是在保留原有类的前提下(即不改变原来的代码)把一个类的接口转换另一个接口,这样可以让具有不同接口的(原本接口不匹配的)多个类可以一起工作。而如果没有这样的转换,将不能使用到新的类提供的服务。 适配器可分为类适配器和对象适配器。...
2008-05-20 01:46:50 113
prototype原型模式
prototype原型模式,简单明了的讲是,克隆并复用原型对象模式。 当客户机需要创建对象集时,其中对象是相似的,或仅在状态方面有所不同,并且创建此类对象将花费很多的时间,所涉及的处理也较多。比如,通过复制具有类似结构代码,并进行修改,来创建一个新的实例,这时可以考虑采用原型模式,这样就不必通过复制修改代码来实现新的实例,只要克隆一下另一个实例,通过修改相应的属性的值来到达你的目的。...
2008-05-19 17:38:27 107
builder构造模式
builder构造模式,简单明了的讲就是一个对象(或者说是一个部件)实例化过程的提取模式。目的在于方便维护和扩展。 如果要创建的对象是复杂的,而且组成对象创建工程的一系列步骤可以按不同的方式来生成不同的对象,这是就应该要考虑使用构造模式,否则你把构造的所有的过程都放在一个对象里面,代码可能会变得很臃肿,这时应该把系统模块化。允许创建复杂的对象,可以只提供要创建的对象类型的相关信息,并且使...
2008-05-19 14:27:57 117
singleton单例模式
singleton单例设计模式,目的在于类之间的信息共享。 singleton单例设计模式也是相当容易理解的模式之一。就是在整个系统中,只有一个实例。更确切的讲,应该是让jvm一旦为某对象创建了一个引用,就不会在创建的一种模式。举一个在本人的项目中比较典型的例子,就是用户在某个类中就行了一些信息处理,接着用户可能会频繁的使用到这些处理后的信息而且这些信息占用的空间较小,那么就...
2008-05-19 01:37:50 86
factory工厂模式
factory工厂设计模式,目的在于方便系统扩展。 这是设计模式里面最容易理解的模式之一。工厂就是可以生产东西的地方,然而一个工厂也是限定生产成品的,例如生产鞋子和袜子的工厂,你只能定鞋子和袜子的货。for example,在我的一个项目里面,有这样的功能,就是多格式文件处理,并获取一定信息,由于各种格式的文件的格式不同,所以读取方式不同,就要对应的类进行读取。我是这样处理...
2008-05-19 00:54:16 135
struts的ActionForm的一个要注意的地方
在链接传一个参数例如:struts.do?type=all,在声明一个文本框:例如,在ACTION类里面,用request,getParameter("type")和form.getType()(对应的ActionForm类的函数),读出来的是链接的参数的值——"all",读不出在文本框手动填入的值 。在servlet里面也是这样的,因为struts的内核还是servlet。...
2008-02-24 00:12:17 148
POI读取EXCEL文件的错误(invalid header signature )处理
搞了半天才知道是因为POI(3.0.1版本)还不支持EXCEL4.0以上的版本所造成的,把EXCEL另存为EXCEL3.0或其以下版本就可以解决问题了。
2008-02-24 00:07:55 2847
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人