摘要: 如果需要将一个复杂对象的构建与它的表示层分离,使得同样的构建过程可以创建不同的表示的意图时,我们就需要用到建造者模式了,又叫生成器模式。建造者模式可以将一个产品的内部表象与产品的生产过程分割开来,从而可以使一个建造过程生成具有不同内部表象的产品对象。如果我们使用了建造者模式,那么用户只需要指定需要建造的类型就可以得到他们,而具体的建造过程和细节就不需要知道了。 我们来看建造者模式的概念,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 那么,什么时候需要建造者模式呢? 它主要是用于创建一些复杂的对象,这些对象内部构建间的建造顺序通常是稳定的,但对象内部的构建... 阅读全文
posted @ 2012-10-26 11:29 寒剑飘香 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 外观模式(Facade),为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 我们来看具体的代码实现: 三个子系统类: 1 package facade; 2 3 public class SubSystemOne { 4 public void methodOne() { 5 System.out.println("子系统方法一"); 6 } 7 } 8 9 public class SubSystemTwo {10 public void methodTwo() {11 ... 阅读全文
posted @ 2012-10-26 10:49 寒剑飘香 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 这几天看《高性能MySQL》,越来越觉得绕不开算法了,当初上大学的时候数据结构没有好好听,感觉真是后悔。没办法,得好好学习下算法导论了。 阅读全文
posted @ 2012-10-25 23:55 寒剑飘香 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 当某天,你突然发现:“坚持”已经成为你的一种习惯,你再也不需要给自己找一个理由,告诉自己为什么坚持下去,已经此时“坚持”已经融入到了你的血液中,骨子里。 阅读全文
posted @ 2012-10-25 18:21 寒剑飘香 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 以下的文章主要介绍的是MySQL字符集的基本类型,统一字符集的实际操作方法,等相关内容的介绍,以下就是MySQL字符集的相关内容的描述,希望你会在以后的学习或是工作中带来很大的帮助。一. MySQL字符集类型MySQL服务器中有六个关键位置使用了字符集的概念,他们是:client 、connection、database、results、server 、system。a、其中client是客户端使用的字符集,相当于网页中的字符集设置如下<meta http-equiv="Content-Type" content="text/html; charset=ut 阅读全文
posted @ 2012-10-25 18:10 寒剑飘香 阅读(273) 评论(0) 推荐(0) 编辑
摘要: MySQL提供标准的SQL模式匹配,以及一种基于象Unix实用程序如vi、grep和sed的扩展正则表达式模式匹配的格式。标准的SQL模式匹配 SQL的模式匹配允许你使用“_”匹配任何单个字符,而“%”匹配任意数目字符(包括零个字符)。在 MySQL中,SQL的模式缺省是忽略大小写的。下面显示一些例子。注意在你使用SQL模式时,你不能使用=或!=;而使用LIKE或NOT LIKE比较操作符。例如,在表pet中,为了找出以“b”开头的名字:mysql> SELECT * FROM pet WHERE name LIKE "b%";+--------+--------+- 阅读全文
posted @ 2012-10-25 17:36 寒剑飘香 阅读(666) 评论(0) 推荐(0) 编辑
摘要: 日期和时间函数对建立一个站点是非常有用的。站点的主人往往对一个表中的数据何时被更新感兴趣。通过日期和时间函数,你可以在秒级跟踪一个表的改变。 日期和时间类型是DATETIME、DATE、TIMESTAMP、TIME和YEAR。这些的每一个都有合法值的一个范围,而“零”当你指定确实不合法的值时被使用。注意,MySQL允许你存储某个“不严格地”合法的日期值,例如1999-11-31,原因我们认为它是应用程序的责任来处理日期检查,而不是SQL服务器。为了使日期检查更“快”,MySQL仅检查月份在0-12的范围,天在0-31的范围。上述范围这样被定义是因为MySQL允许你在一个DATE或DATE... 阅读全文
posted @ 2012-10-25 17:06 寒剑飘香 阅读(519) 评论(0) 推荐(0) 编辑
摘要: 无论是在小得可怜的免费数据库空间或是大型电子商务网站,合理的设计表结构、充分利用空间是十分必要的。这就要求我们对数据库系统的常用数据类型有充分的认识。下面我就将我的一点心得写出来跟大家分享。一、数字类型 数字类型按照我的分类方法分为三类:整数类、小数类和数字类。 我所谓的“数字类”,就是指DECIMAL和NUMERIC,它们是同一种类型。它严格的说不是一种数字类型,因为他们实际上是将数字以字符串形式保存的;他的值的每一位(包括小数点)占一个字节的存储空间,因此这种类型耗费空间比较大。但是它的一个突出的优点是小数的位数固定,在运算中不会“失真”,所以比较适合用于“价格”、“金额”这样对精... 阅读全文
posted @ 2012-10-25 16:40 寒剑飘香 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 本节将讲述SELECT语句的一些高级功能。列和表的别名列的别名精选输出的列可以用列名、列别名或列位置在ORDER BY和GROUP BY子句引用,列位置从1开始。例如,我们从pet表中检索出宠物和种类,直接引用列名:mysql> SELECT name,species FROM pet ORDER BY name, species;其输出为:+----------+---------+| name | species |+----------+---------+| Bowser | dog || Buffy | dog || Chirpy | bird || Claws | cat | 阅读全文
posted @ 2012-10-25 16:26 寒剑飘香 阅读(630) 评论(0) 推荐(0) 编辑
摘要: 今天是小菜开博的第三天,感觉挺好的,每天都能学习一些东西,生活过的很充实,一定要坚持下去。 今天,我们要学习的是程序设计中的一些原则。 一、单一职责原则,就一个类而言,应该仅有一个引起它变化的原因。 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会抑制或者削弱这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当发生变化时,设计会遭受到意想不到的破坏。 二、开放封闭原则,是说软件实体(类、模块、函数等等)应该可以扩展,但是不可以修改。 面对需求,对程序的改动是通过增加新代码进行的,而不是更改现有的代码。 我们希望的是在开发工作展开不久,就可以知道可能发... 阅读全文
posted @ 2012-10-25 15:29 寒剑飘香 阅读(426) 评论(0) 推荐(0) 编辑