- 博客(80)
- 收藏
- 关注
原创 学做酷炫有爱的免费网页,学习 Github Page 教你分分钟搭建自己的博客
学做酷炫有爱的免费网页,学习 Github Page 教你分分钟搭建自己的博客 你还在为男/女友的选什么样的节日礼物发愁吗,小熊玫瑰神马的都太Out了吧,既然怀着一颗真诚的心就自己学习做些有趣好玩的东西吧。 教你分分钟做一个相识纪念日网页,做一个他/她的3D相册,有趣好玩的照片秀,一首歌就是一段故事,做一个专属他/她的MP3播放器,一个酷炫无比的电影网页,一个镶嵌视频的网页,在他/她无聊的时候可以听听歌,播放他/她喜欢的MV,播放你们在生活中录制的视频,看看你推荐的电影,为你们的故事添加一份
2014-06-11 19:48:42
1571
1
转载 (转载)Hibernate 的 10 个常见面试问题及答案
在Java J2EE方面进行面试时,常被问起的Hibernate面试问题,大多都是针对基于Web的企业级应用开发者的角色的。Hibernate框架在Java界的成功和高度的可接受性使得它成为了Java技术栈中最受欢迎的对象关系影射(ORM)解决方案。Hibernate将你从数据库相关的编码中解脱了出来,使你可以更加专注地利用强大的面向对象的设计原则来实现核心的业务逻辑。采用Hibernate后,你
2013-05-29 10:18:00
831
原创 Java设计模式之三十(迪米特法则)
一、什么是迪米特法则迪米特法则(Law of Demeter )又叫做最少知识原则,也就是说,一个对象应当对其他对象尽可能少的了解。迪米特法则最初是用来作为面向对象的系统设计风格的一种法则,于1987年秋天由lan holland在美国东北大学为一个叫做迪米特的项目设计提出的。二、狭义的迪米特法则如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其
2013-05-09 12:02:12
1243
1
原创 Java设计模式之二十九(依赖倒转原则)
一、什么是倒转?二、什么是依赖倒转原则依赖倒转(Dependence Inversion Principle ):1.抽象不应该依赖于细节,细节应该依赖于抽象。 2.高层模块不依赖底层模块,两者都依赖抽象。三、组装电脑四、怎样做到依赖倒转1.工厂方法模式2.模板方法模式3.迭代子模式代码实现:
2013-05-09 11:54:49
1143
原创 Redis(ZADD)使用Java API实现简单排名
RedisZADD key score member [[score member] [score member] ...]将一个或多个 member 元素及其 score 值加入到有序集 key 当中。如果某个 member 已经是有序集的成员,那么更新这个member 的score 值,并通过重新插入这个member 元素,来保证该member 在正确的位置上。sc
2013-05-08 17:40:01
11026
1
原创 Java设计模式之二十八(里氏代换原则)
一、什么是里氏代换原则里氏代换原则(Liskov Substitution Principle):一个软件实体如果使用的是一个父类的话,那么一定适用于其子类,而且它察觉不出父类和子类对象的区别。也就是说,在软件里面,把父类替换成它的子类,程序的行为没有变化。二、反过来的代换不成立里氏代换原则(Liskov Substitution Principle):一个软件实体如果使用的是
2013-05-08 11:02:52
1367
原创 Java设计模式之二十七(单一职责原则)
什么是单一职责原则单一职责原则(Single Responsibility Principle ):就一个类而言,应该仅有一个引起它变化的原因。二、多功能的山寨手机山寨手机的功能:拍照、摄像、手机游戏、网络摄像头、GPS、炒股等等。功能多、但是每一个功能都不强。拍摄功能 ------专业摄像机或照相机手机游戏 ------PSP网
2013-05-08 10:54:51
1031
原创 Java设计模式之二十六(开放封闭原则)
一、什么是开放封闭原则开放封闭原则(Open-Closed Principle):一个软件实体应当对扩展开放,则修改关闭。在设计一个模块时,应当使得这个模块可以在不被修改的前提下被扩展。也就是说,应当可以在不必修改源代码的情况下修改这个模块的行为。设计的目的便在于面对需求的改变而保持系统的相对稳定,从而使得系统可以很容易的从一个版本升级到另一个版本。二、怎样做到开放
2013-05-06 13:43:26
1866
原创 Java设计模式之二十五(访问者模式)
一、什么是访问者模式Visitor模式也叫访问者模式,是行为模式之一,它分离对象的数据和行为,使用Visitor模式,可以不修改已有类的情况下,增加新的操作。二、访问者模式的应用示例比如有一个公园,有一到多个不同的组成部分;该公园存在多个访问者:清洁工A负责打扫公园的A部分,清洁工B负责打扫公园的B部分,公园的管理者负责检点各项事务是否完成,上级领导可以视察公园等等。也就是说,
2013-05-05 14:00:32
1806
原创 Java设计模式之二十四(命令模式)
一、什么是命令模式Command模式也叫命令模式 ,是行为设计模式的一种。Command模式通过被称为Command的类封装了对目标对象的调用行为以及调用参数。二、命令模式的应用场景在面向对象的程序设计中,一个对象调用另一个对象,一般情况下的调用过程是:创建目标对象实例;设置调用参数;调用目标对象的方法。 但在有些情况下有必要使用一个专门的类对这种调用过程加以封装,我们把这种专
2013-05-04 11:02:42
934
原创 Java设计模式之二十三(状态模式)
一、什么是状态模式State模式也叫状态模式,是行为设计模式的一种。State模式允许通过改变对象的内部状态而改变对象的行为,这个对象表现得就好像修改了它的类一样。 二、状态模式的应用场景状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑转译到表现不同状态的一系列类当中,可以把复杂的判断逻辑简化。三、状态模式的结构四
2013-05-04 10:16:21
878
原创 Java设计模式之二十二(备忘录模式)
一、什么是备忘录模式 Memento模式也叫备忘录模式,是行为模式之一,它的作用是保存对象的内部状态,并在需要的时候(undo/rollback)恢复对象以前的状态。二、备忘录模式的应用场景如果一个对象需要保存状态并可通过undo或rollback等操作恢复到以前的状态时,可以使用Memento模式。1)一个类需要保存它的对象的状态(相当于Originator角色)
2013-05-03 11:53:25
1131
原创 Java设计模式之二十一(模版模式)
一、什么是模板方法模式Template Method模式也叫模板方法模式,是行为模式之一,它把具有特定步骤算法中的某些必要的处理委让给抽象方法,通过子类继承对抽象方法的不同实现改变整个算法的行为。二、模板方法模式的应用场景Template Method模式一般应用在具有以下条件的应用中:- 具有统一的操作步骤或操作过程- 具有不同的操作细节- 存在多个具有同
2013-05-03 11:05:09
1012
原创 Java设计模式之二十(迭代模式)
一、什么是迭代模式Iterator模式也叫迭代模式,是行为模式之一,它把对容器中包含的内部对象的访问委让给外部类,使用Iterator(遍历)按顺序进行遍历访问的设计模式。二、不使用迭代模式的应用在应用Iterator模式之前,首先应该明白Iterator模式用来解决什么问题。或者说,如果不使用Iterator模式,会存在什么问题。1.由容器自己实现顺序遍历。直接在容器
2013-05-02 11:30:43
1025
原创 Java设计模式之十九(职责链模式)
一、什么是职责链模式Chain of Responsibility(CoR)模式也叫职责链模式或者职责连锁模式,是行为模式之一,该模式构造一系列分别担当不同的职责的类的对象来共同完成一个任务,这些类的对象之间像链条一样紧密相连,所以被称作职责链模式。二、职责链模式的应用场景例1:比如客户Client要完成一个任务,这个任务包括a,b,c,d四个部分。 首先客户Client把任务
2013-04-27 10:17:19
1704
原创 Java设计模式之十八(中介者模式)
一、什么是中介者模式 Mediator模式也叫中介者模式,是由GoF提出的23种软件设计模式的一种。Mediator模式是行为模式之一,在Mediator模式中,类之间的交互行为被统一放在Mediator的对象中,对象通过Mediator对象同其他对象交互,Mediator对象起着控制器的作用。二、中介者模式的结构三、中介者模式的角色和职责mediator
2013-04-26 09:21:28
859
原创 Java设计模式之十七(解释器模式)
一、什么是解释器模式Interpreter模式也叫解释器模式,是行为模式之一,它是一种特殊的设计模式,它建立一个解释器,对于特定的计算机程序设计语言,用来解释预先定义的文法。简单地说,Interpreter模式是一种简单的语法解释器构架。二、解释器模式应用场景 当有一个语言需要解释执行, 并且你可将该语言中的句子表示为一个抽象语法树时,可使用解释器模式。而当存在以下情
2013-04-25 09:41:18
1095
原创 Spring集成Redis实例入门
ShardedJedis实现分析ShardedJedis是基于一致性哈希算法实现的分布式Redis集群客户端;ShardedJedis的设计分为以下几块:对象池设计:Pool,ShardedJedisPool,ShardedJedisFactory面向用户的操作封装:BinaryShardedJedis,BinaryShardedJedis一致性哈希实现:Sharded关于Shar
2013-04-24 19:43:22
1633
转载 Git入门指南 ---- Git Gui For Windows
本教程将讲述:gitk的Git Gui的部分常用功能和使用方法,包括:建库、克隆(clone)、上传(push)、下载(pull - fetch)、合并(pull - merge)1、下载并安装 下载地址:http://code.google.com/p/msysgit/downloads/list?q=full+installer+official+git新
2013-04-24 12:08:49
1695
原创 Java设计模式之十六(适配器模式)
一、什么是适配器模式Adapter模式也叫适配器模式,是构造型模式之一,通过Adapter模式可以改变已有类(或外部类)的接口形式。二、适配器模式应用场景 在大规模的系统开发过程中,我们常常碰到诸如以下这些情况:我们需要实现某些功能,这些功能已有还不太成熟的一个或多个外部组件,如果我们自己重新开发这些功能会花费大量时间;所以很多情况下会选择先暂时使用外部组件,以后再考虑随时
2013-04-24 10:18:08
1005
原创 Java设计模式之十五(桥接模式)
一、什么是桥接模式Bridge 模式又叫做桥接模式,是构造型的设计模式之一。Bridge模式基于类的最小设计原则,通过使用封装,聚合以及继承等行为来让不同的类承担不同的责任。它的主要特点是把抽象(abstraction)与行为实现(implementation)分离开来,从而可以保持各部分的独立性以及应对它们的功能扩展。二、桥接模式的结构三、桥接模式的角色和职责
2013-04-20 11:44:12
8124
2
原创 Java设计模式之十四(组合模式)
一、什么是组合模式Composite模式也叫组合模式,是构造型的设计模式之一。通过递归手段来构造树形的对象结构,并可以通过一个对象来访问整个对象树。二、组合模式的结构三、组合模式的角色和职责Component (树形结构的节点抽象)- 为所有的对象定义统一的接口(公共属性,行为等的定义)- 提供管理子节点对象的接口方法- [可选]提供管理父节
2013-04-20 10:33:42
1102
原创 Java设计模式之十三(外观模式)
一、什么是外观模式 Facade模式也叫外观模式,是由GoF提出的23种设计模式中的一种。Facade模式为一组具有类似功能的类群,比如类库,子系统等等,提供一个一致的简单的界面。这个一致的简单的界面被称作facade。二、外观模式的结构三、外观模式的角色和职责Facade 为调用方定义简单的调用接口。 Clients 调用者。通过Fac
2013-04-17 11:45:09
1410
原创 Java设计模式之十二(代理模式)
一、什么是代理模式Proxy模式又叫做代理模式,是构造型的设计模式之一,它可以为其他对象提供一种代理(Proxy)以控制对这个对象的访问。 所谓代理,是指具有与代理元(被代理的对象)具有相同的接口的类,客户端必须通过代理与被代理的目标类交互,而代理一般在交互的过程中(交互前后),进行某些特别的处理。二、代理模式的结构三、代理模式的角色和职责subject
2013-04-17 10:47:17
1168
原创 Java设计模式之十一(享元模式)
一、什么是享元模式Flyweight模式也叫享元模式,是构造型模式之一,它通过与其他类似对象共享数据来减小内存占用。二、享元模式的结构三、享元模式的角色和职责抽象享元角色:所有具体享元类的父类,规定一些需要实现的公共接口。 具体享元角色:抽象享元角色的具体实现类,并实现了抽象享元角色规定的方法。 享元工厂角色: 负责创建和管理享元角色。
2013-04-16 21:53:46
1008
原创 Java设计模式之十(观察者模式)
一、什么是观察者模式Observer模式是行为模式之一,它的作用是当一个对象的状态发生变化时,能够自动通知其他关联对象,自动刷新对象状态。 Observer模式提供给关联对象一种同步通信的手段,使某个对象与依赖它的其他对象之间保持状态同步。二、观察者模式的结构三、观察者模式的角色和职责Subject(被观察者) 被观察的对象。当需要被观察的状态发
2013-04-16 11:53:54
2665
原创 Java设计模式之九(策略模式)
一、什么是策略模式Strategy模式也叫策略模式是行为模式之一,它对一系列的算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法选择交由客户端决定(策略)。Strategy模式主要用来平滑地处理算法的切换 。二、策略模式的结构三、策略模式的角色和职责Strategy:策略(算法)抽象。 Conc
2013-04-16 10:56:29
1112
原创 Java设计模式之八(装饰模式)
一、什么是装饰模式 装饰( Decorator )模式又叫做包装模式。通过一种对客户端透明的方式来扩展对象的功能,是继承关系的一个替换方案。二、装饰模式的结构三、装饰模式的角色和职责抽象组件角色: 一个抽象接口,是被装饰类和装饰类的父接口。具体组件角色:为抽象组件的实现类。抽象装饰角色:包含一个组件的引用,并定义了与抽象组件一致的接口。
2013-04-15 11:40:42
1213
原创 Java设计模式之七(建造者模式)
一、什么是建造者模式Builder模式也叫建造者模式或者生成器模式,是由GoF提出的23种设计模式中的一种。Builder模式是一种对象创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。二、建造者模式的结构三、建造者模式应用场景- 对象的创建:Builder模式是为对象的创建而
2013-04-15 10:34:49
902
原创 Java设计模式之六(原型模式)
一、什么是原型模式Prototype模式是一种对象创建型模式,它采取复制原型对象的方法来创建对象的实例。使用Prototype模式创建的实例,具有与原型一样的数据。二、原型模式的特点1. 由原型对象自身创建目标对象。也就是说,对象创建这一动作发自原型对象本身。2.目标对象是原型对象的一个克隆。也就是说,通过Prototype模式创建的对象,不仅仅与原型对象具有相同的
2013-04-15 09:44:08
1044
原创 Java设计模式之五(单例模式详解)
一、什么是单例模式单例模式是一种对象创建型模式,使用单例模式,可以保证为一个类只生成唯一的实例对象。也就是说,在整个程序空间中,该类只存在一个实例对象。其实,GoF对单例模式的定义是:保证一个类、只有一个实例存在,同时提供能对该实例加以访问的全局访问方法。 二、为什么要使用单例模式呢?在应用系统开发中,我们常常有以下需求:- 在多个线程之间,比如servlet环境,
2013-04-14 11:01:58
1225
原创 Java设计模式之四(经典面试题:工厂模式在开发中的运用)
一、工厂模式在开发中的运用面试题: 写一个简单的计算器。代码实现:抽象一个运算类:package com.qianyan.calcuator;public abstract class Operation { //数字一 private double num1; //数字二 private double num2; public do
2013-04-14 09:31:37
4119
原创 Java设计模式之三(抽象工厂模式)
一、什么是抽象工厂模式抽象工厂模式是所有形态的工厂模式中最为抽象和最其一般性的。抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,能够创建多个产品族的产品对象。二、产品族和产品等级结构三、模式中包含的角色及其职责1.抽象工厂(Creator)角色 抽象工厂模式的核心,包含对多个产品结构的声明,任何工厂类都必须实现这个接口。
2013-04-14 08:53:09
1136
原创 Pig Grunt之简单命令及实例说明
Pig大的运行方法:1、脚本2、Grunt3、嵌入式Grunt1、自动补全机制 (命令补全、不支持文件名补全)2、autocomplete文件3、Eclipse插件PigPen进入Grunt shell命令[hadoop@master pig]$ ./bin/pig2013-04-13 23:00:19,909 [main] INFO or
2013-04-13 15:40:37
3574
1
原创 Java设计模式之二(工厂方法模式)
一、什么是工厂方法模式?工厂方法模式同样属于类的创建型模式又被称为多态工厂模式 。工厂方法模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。二、模式中包含的角色及其职责
2013-04-13 13:43:23
968
原创 Java设计模式之一(简单工厂模式)
一、什么是简单工厂模式?简单工厂模式属于类的创建型模式,又叫做静态工厂方法模式。通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。二、模式中包含的角色及其职责?1.工厂(Creator)角色 简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品对象。 2.抽象(Product)角色 简单工厂模式所创建的所有
2013-04-13 13:10:46
1217
原创 hbase Shell之简单命令说明
[hadoop@master hbase]$ bin/hbase shell进入shellhbase(main):001:0> help******(Shell命令说明)hbase(main):002:0> status1 servers, 0 dead, 4.0000 average load (服务器,dead,负荷)hbase(main
2013-04-12 19:03:05
1406
原创 Java数据结构(二叉数基础与遍历篇)
二叉树:在计算机科学中,树是一种重要的非线性数据结构,直观地看,它是数据元素(在树中称为结点)按分支关系组织起来的结构。二叉树是每个节点最多有两个子树的有序树。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。值得注意的是,二叉树不是树的特殊情形。在图论中,二叉树是一个连通的无环图,并且每一个顶点的度不大于3。
2013-04-12 16:22:11
903
原创 Java数据结构(递归执行顺序、杨辉三角、斐波那契篇)
递归:程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。一般来说,递归需要有
2013-04-11 08:49:52
1535
原创 Java数据结构(链表篇)
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 相比于线性表顺序结构,链表比较方便插入和删除操作。连接点:package ch04Link;public cl
2013-04-10 12:13:14
820
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人