自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

三级小野怪的专栏

海洋之大,源于点滴之水的积累。

  • 博客(74)
  • 资源 (16)
  • 收藏
  • 关注

转载 Oracle 聚合函数解决聚集连接字符串问题

需求:给定数据表:wm_testcode name1    a1    b1    c2    中2    国2    人需要的结果(分隔符可以由参数输入):code name1    a,b,c2    中,国,人这个问题在可以使用Oracle的wmsys.wm_concat 函数解决:select wt.code, wm_concat

2013-07-26 17:50:35 11611 2

转载 SQL查找删除重复行

本文讲述如何查找数据库里重复的行。这是初学者十分普遍遇到的问题。方法也很简单。这个问题还可以有其他演变,例如,如何查找“两字段重复的行”(#mysql IRC 频道问到的问题)如何查找重复行        第一步是定义什么样的行才是重复行。多数情况下很简单:它们某一列具有相同的值。本文采用这一定义,或许你对“重复”的定义比这复杂,你需要对sql做些修改。本文要用到的数据样本cr

2013-02-19 11:26:18 12234

原创 使用axis开发webservice服务java.net.ConnectException: Connection refused: connect异常的解决办法

最近使用axis开发webservice服务,本机调用一切正常,但是其他人却访问不了,报错信息为:AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode:   faultString: java.net.ConnectException: Co

2012-07-12 17:26:35 53348 5

转载 oracle树形结构由子节点递归得到父节点

在oracle中如何从子节点记录向父节点上溯?比如有一个表:guid            parentguid1      02      13      14      25      26      57      58      7我们从GUID为1根据parentguid关系可以查出该GUID下的所有子节点.现在要从某一子节点如GUID为7

2012-07-03 23:26:29 15250

原创 oracle行列转换

在重构公司一个项目的时候,发现一个bug,修正时需要使用到oracle的行列转换,虽然本人不懂,但百度是我最好的老师,网上搜到一篇文章,介绍的非常详细:1、固定列数的行列转换   如:student   subject   grade   ---------------------------   student1   语文   80   student1   数学   7

2012-06-30 22:27:45 6711 1

原创 发一个displayTag的新样式

displayTag是非常常用的一个表格标签,但是它的样式却有点呆板,最近客户就对它的样式极为不满,让我们改进,没办法,客户就是上帝,只能照办。原样式如下:修改后如下:其实主要就是修改了其自带的display.css这个样式表,代码如下:原display.csstable.t1 {star:expression(this.width="100%",this.border

2012-06-30 22:11:51 11010 5

原创 23种设计模式(15):备忘录模式

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

2012-06-27 21:38:34 56310 55

转载 html判断IE版本

1. 除IE外都可识别 2. 所有的IE可识别 3. 只有IE5.0可以识别 4. 仅IE5.0与IE5.5可以识别 5. IE5.0以及IE5.0以上版本都可以识别 6. 仅IE6可识别 7. IE6以及IE6以下版本可识别 8. IE6以及IE6以上版本可识别 9. 仅IE7可识别 10. IE7以及IE7以下版本可识别 11. I

2012-06-15 12:54:22 14006 1

原创 23种设计模式(14):解释器模式

定义:给定一种语言,定义他的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子。类型:行为类模式类图:        解释器模式是一个比较少用的模式,本人之前也没有用过这个模式。下面我们就来一起看一下解释器模式。 解释器模式的结构抽象解释器:声明一个所有具体表达式都要实现的抽象接口(或者抽象类),接口中主要是一个interpret()方法,称为解释

2012-06-15 12:34:25 34204 24

原创 即使再忙,也请坚持下去

突然发现自己有两周没有更新博客了,原因除了最近工作比较忙之外,我想主要还是自己的惰性又在作祟了,即使再忙,每天1个小时的时间还是有的。还是那一句话,技术博客与感悟类的博客不同,虽然不必每天都有感而发,但是保持知识积累的连续性是很重要的,假如中间中断一段时间,那么很可能前面学习的内容就渐渐的淡忘了。所以,在没有成为大牛之前,请一定要坚持下去,这句话是对我自己说的,同时也是对那些正在疏远技术博客的博友

2012-06-13 07:46:16 9424 22

原创 23种设计模式(13):迭代器模式

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

2012-05-28 21:54:03 53985 20

原创 23种设计模式(12):策略模式

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

2012-05-28 16:05:33 40669 20

原创 项目总结:工作流系统webservice服务

这个项目的功能是使用webservice方式完成两个系统间的数据交互,使用的框架是axis2。简单的总结一下项目中的几个问题:开发客户端时要设置访问超时时间        使用axis生成的webservice客户端默认的访问超时时间比较短,如果服务端的处理时间比较长,就会发生客户端访问超时的现象,所以一定要修改一下客户端的超时时间,以免发生明明服务调用成功,但是却由于运行时间比较长,而导

2012-05-22 17:39:38 8481 1

原创 23种设计模式(11):责任连模式

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

2012-05-15 14:47:42 21528 17

原创 23种设计模式(10):命令模式

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

2012-05-09 17:41:02 49025 27

原创 详解java类的生命周期

引言        最近有位细心的朋友在阅读笔者的文章时,对java类的生命周期问题有一些疑惑,笔者打开百度搜了一下相关的问题,看到网上的资料很少有把这个问题讲明白的,主要是因为目前国内java方面的教材大多只是告诉你“怎样做”,但至于“为什么这样做”却不多说,所以造成大家在基础和原理方面的知识比较匮乏,所以笔者今天就斗胆来讲一下这个问题,权当抛砖引玉,希望对在这个问题上有疑惑的朋友有所帮助,

2012-04-27 13:36:49 66792 79

原创 23种设计模式(9):访问者模式

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

2012-04-23 14:49:16 76894 38

原创 23种设计模式(8):观察者模式

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

2012-04-18 08:41:43 39982 28

原创 23种设计模式(7):中介者模式

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

2012-04-05 21:30:49 45593 27

原创 23种设计模式(6):模版方法模式

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

2012-03-29 09:04:50 27895 27

转载 谁是你心目中最优秀的ajax框架

引语  毫无疑问,Ajax作为当前最火爆的技术之一,其优秀的框架层出不穷。Prototype、Dwr、Dojo、JQuery、YUi…… 都是非常出色的产品。本专题为您介绍了目前十大流行的Ajax框架及各自特性,供您在开发过程中参阅。  您当前正在使用的Ajax框架是什么?哪一个又是您心目中最优秀的呢?欢迎您发表评论,与他人分享您的观点。 十大Ajax框架(排名不分先后)No1

2012-03-27 19:30:14 5827

原创 创建类模式总结篇

创建类模式主要关注对象的创建过程,将对象的创建过程进行封装,使客户端可以直接得到对象,而不用去关心如何创建对象。创建类模式有5种,分别是:单例模式:用于得到内存中的唯一对象。工厂方法模式:用于创建复杂对象。抽象工厂模式:用于创建一组相关或相互依赖的复杂对象。建造者模式:用于创建模块化的更加复杂的对象。原型模式:用于得到一个对象的拷贝。为什么需要创建性模式        首先,在编程

2012-03-26 09:03:28 18234 14

原创 23种设计模式(5):原型模式

定义:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。类型:创建类模式类图:原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件:实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有一个,就是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clone方法。在ja

2012-03-26 08:58:25 87736 43

原创 23种设计模式(4):建造者模式

定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。类型:创建类模式类图:四个要素产品类:一般是一个较为复杂的对象,也就是说创建对象的过程比较复杂,一般会有比较多的代码量。在本类图中,产品类是一个具体的类,而非抽象类。实际编程中,产品类可以是由一个抽象类与它的不同实现组成,也可以是由多个抽象类与他们的实现组成。抽象建造者:引入抽象建造者的目的,是

2012-03-20 22:52:06 64939 41

转载 为什么学C++比C#的长期风险低

语言之争是程序员永远不会疲倦的闲暇话题,初学者的语言选择也是大家所津津乐道的。回望近年来,随着微软.net战略的来势汹汹,不少初学者都喜欢以C#作为自己的第一门语言。在这样的大环境之下,讨论C++还有什么意义么?        在瞎扯这个问题之前,我们先来看看为啥初学者都选择C#。估计原因很简单,就是入门容易。当然,这容易是相对于C++而言的。如果学C++,你肯定要看《C++ primer》这

2012-03-16 14:07:35 12539 7

原创 23种设计模式(3):抽象工厂模式

定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。类型:创建类模式类图:抽象工厂模式与工厂方法模式的区别        抽象工厂模式是工厂方法模式的升级版本,他用来创建一组相关或者相互依赖的对象。他与工厂方法模式的区别就在于,工厂方法模式针对的是一个产品等级结构;而抽象工厂模式则是针对的多个产品等级结构。在编程中,通常一个产品结构,表现为一个接口或者抽

2012-03-16 08:51:30 162713 83

原创 23种设计模式(2):工厂方法模式

定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。类型:创建类模式类图:工厂方法模式代码interface IProduct { public void productMethod();}class Product implements IProduct { public void productMethod(

2012-03-15 09:05:43 105170 61

原创 单例模式讨论篇:单例模式与垃圾回收

Jvm的垃圾回收机制到底会不会回收掉长时间不用的单例模式对象,这的确是一个比较有争议性的问题。将这一部分内容单独成篇的目的也是为了与广大博友广泛的讨论一下这个问题。为了能让更多的人看到这篇文章,请各位博友看完文章之后,点一下“顶”,让本篇文章排名尽量的靠前。笔者在此谢过。讨论命题:当一个单例的对象长久不用时,会不会被jvm的垃圾收集机制回收。        首先说一下为什么会产生这一疑问,

2012-03-08 09:14:35 62041 106

原创 23种设计模式(1):单例模式

定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。类型:创建类模式类图:类图知识点:1.类图分为三部分,依次是类名、属性、方法2.以>结尾的为注释信息3.修饰符+代表public,-代表private,#代表protected,什么都没有代表包可见。4.带下划线的属性或方法代表是静态的。5.对类图中对象的关系不熟悉的朋友可以参考文章:设计模式

2012-03-08 09:12:30 121351 90

原创 解决backtrack5无法ssh登录问题

backtrack5安装完毕后,使用putty远程登录时显示network error:Connection refused解决方法:登录系统(系统默认用户名密码是root/toor,startx可以进入图形界面)在命令终端输入命令,#sshd-generate (系统可能会询问是否覆盖,全部选Y)。或者#ssh-keygen -t dsa -f /etc/ssh/ssh_

2012-03-03 17:33:25 7300

原创 设计模式六大原则(6):开闭原则

定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。解决方案:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。 开闭原则是面向对象设计中

2012-02-27 08:48:41 114272 114

原创 设计模式六大原则(5):迪米特法则

定义:一个对象应该对其他对象保持最少的了解。问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。解决方案:尽量降低类与类之间的耦合。         自从我们接触编程开始,就知道了软件编程的总的原则:低耦合,高内聚。无论是面向过程编程还是面向对象编程,只有使各个模块之间的耦合尽量的低,才能提高代码的复用率。低耦合的优点不言而喻,但是怎么样编程才能做

2012-02-27 08:40:57 82786 63

原创 设计模式六大原则(4):接口隔离原则

定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。举例来说明接口隔离原则:(图1  未遵循接

2012-02-27 08:32:29 84849 41

原创 有2n+1个数,其中有2n个数出现过两次,找出其中只出现一次的数

给出2n+1个数,其中有2n个数出现过两次,如何用最简便的方法找出里面只出现了一次的那个数。例如这样一组数3,3,1,2,4,2,5,5,4,其中只有1出现了1次,其他都是出现了2次,如何找出其中的1?最简便的方法是使用异或,代码如下:public class XOR { public static void main(String[] args){ int[] arr

2012-02-24 09:07:00 17783 28

原创 设计模式六大原则(3):依赖倒置原则

定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带来不必要的风险。解决方案:将类A修改为依赖接口I,类B和类C各自实现接口I,类A通过接口I间接

2012-02-24 08:46:12 111001 104

原创 设计模式六大原则(2):里氏替换原则

肯定有不少人跟我刚看到这项原则的时候一样,对这个原则的名字充满疑惑。其实原因就是这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的。定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型

2012-02-22 08:46:33 136622 109

原创 设计模式六大原则(1):单一职责原则

定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。这样,当修改类T1时,不会使职责P2发生故障风险;同理,当修改T2时,也

2012-02-21 09:52:56 126724 125

原创 用博客见证自己的成长

感谢CSDN博客,给我提供了一个学习交流的平台,自从开通博客以来,感觉自己的生活一下充实了很多。通过写博客来积累知识的同时,也给生活带来的很多的喜悦。        第一次发表博客;第一次有访客;第一次得到博客勋章;第一次有人评论;第一次登上排行榜首位;今天,第一次排名跳出了“千里之外”。每一件事都让自己激动不已。现在写博客仍然有点无从下笔的感觉,有时候一句话反复斟酌好久仍不能表达自己的思想。

2012-02-12 00:07:26 9073 37

原创 解决centOS5中xen内核占用串口的问题

很久以前的事了,无意中又再次看到,记录下来分享一下。         背景:给客户开发系统中有短信功能,使用的设备是金笛串口短信猫。系统开发完毕给客户上线后,却发现短信发不出去。         原因:在开发时使用的系统是centOS4,而给客户安装的系统是centOS5,centOS5的默认安装是带Xen内核的,Xen内核回占用串口1,从而导致连接到串口1上的其他设备无法正常工作。

2012-02-11 09:21:24 3270 1

原创 迈出从3K到1W的重要一步——掌握设计模式

IT职场的小菜经常有这样的疑问:        为什么一个相似的功能,大牛一会儿就搞定,然后悠闲地品着下午茶逛淘宝;而自己加班加点搞到天亮还做不完。        为什么用户提出需求变更后,大牛只需潇洒地敲敲键盘,改改配置;而自己将代码改了又改,删了又建,几乎晕厥,最后只能推翻重来。        为什么大牛写完的程序测试上线后,几乎完美运行,用户无懈可击;而自己的程序bug重重,改好

2012-02-09 23:56:34 41505 76

MysqlDocGenerator.rar

根据Mysql数据库生成Word文档 使用方法: 1.解压到任意目录, 2.修改配置文件generatorConfig.xml中的数据库连接信息 3.双击generator.bat执行。 PS: 使用前请保证mysql数据库中的字段备注信息和表的备注信息是填写好的。

2019-08-29

SVN 64位客户端

SVN 64位客户端

2015-08-24

SVN服务器端64位安装包

SVN服务器端64位安装包

2015-08-24

详解java类的生命周期

本文详细讲述了一个java类自调入内存至被卸载的整个声明周期,对理解对象的生命周期,jvm中的类加载等内容有所帮助。

2012-04-27

设计模式6大原则.doc

对设计模式六大原则的一点总结,欢迎免费下载。

2012-02-27

24种设计模式介绍与6大设计原则

java设计模式精讲,包括了java编程中所有的24中设计模式,和java设计需要遵循的6大设计原则,免费下载。

2011-12-30

Java编程思想第四版完整中文高清版免费下载

迄今为止最清晰的Java编程思想完整版第四版。免费下载

2011-12-30

使用java实现OR框架

使用java和mysql阐述实现ORM框架的方法。

2011-12-13

用jquery实现的漂亮滚动图片

使用jquery实现的漂亮的滚动图片,从网上扒的代码稍加改进

2011-11-17

jstl标签库jakarta-taglibs-standard-current.zip

JSTL标签库jakarta-taglibs-standard-current.zip

2011-11-11

Spring3开发指南

详细介绍spring3的开发步骤,是不可多得的学习spring3的文档。

2011-10-31

JBookMaker

可以将TXT文件转换成手机使用的jar格式的电子书。Nokia,三星等非智能手机专用。

2011-10-26

MP3文件格式解析.pdf

详细介绍MP3文件的格式。开发mp3的朋友可以参考。

2011-10-26

ejb3.0实例教程

ejb3.0实例教程。详细介绍ejb开发

2011-10-26

mp3编解码源程序及原理

详细介绍mp3编码解码原理,内附详细源代码

2011-10-26

Struts2+Spring3+Hibernate3实现用户登录

Struts2+Spring3+Hibernate3实现用户登录的简单功能。学习SSH框架的朋友卡伊参考一下

2011-10-25

空空如也

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

TA关注的人

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