- 博客(34)
- 收藏
- 关注
原创 设计模式---装饰者模式
读书笔记-----------------------装饰者模式:动态地将责任加到对象身上。如果要扩展功能,装饰者模式提供了比继承更有弹性的替代方案。 利用组合和委托可以在运行时实现继承行为的效果,动态地给对象加上新的行为。 利用继承扩展子类的行为,是在编译时静态决定的;利用组合的做法,可以在运行时动态地扩展对象的行为。 软件设计原则:类应该对扩展开放,对修改关闭。这...
2013-05-13 10:48:57
313
原创 设计模式---观察者模式
读书笔记-----------------------观察者模式:定义了对象之间的一对多依赖关系,当一个对象(主题对象)的状态改变时,它的所有依赖者(观察者对象)都会收到通知并自动更新。 观察者模式实现了主题对象与观察者对象之间的松耦合,当有新的观察者时,无需修改主题对象的代码,只需要新的观察者对象实现接口。在程序运行的过程中,可以随时注册和删除观察者而不影响主体对象。 ...
2013-05-13 10:47:35
154
原创 设计模式---策略模式
读书笔记----------------------- 策略模式:定义一组算法族,分别封装起来,让各个算法之间可以相互替换。此模式让算法的变化独立于使用算法的客户。 面向对象(OO)的四个基本概念是:抽象、封装、继承、多态。 继承的好处是实现了代码的复用。 软件设计原则1:多用组合,少用继承。使用组合的方式可以实现代码的分割,使代码有更大的弹性,更好地提高了复...
2013-05-13 10:46:18
135
原创 java细节(六)
1 java.util.concurrent.locks.Lock 5.0boolean tryLock()尝试获得锁而没有发生阻塞;若成功返回真。 2 若是很多线程从一个数据结构读取数据而很少线程修改其中数据的话,读写锁是很有用的。它允许读者线程共享访问,当然写线程依然必须互斥访问。下面是一个读写锁的必要步骤:构造一个ReentrantReadWriteLock对象:...
2013-05-13 10:13:11
121
原创 java细节(五)
1 线程与进程的本质区别:每个进程拥有自己的一整套变量,而线程共享数据。这使得线程间通信更有效,容易。 2 java.lang.Thread 1.0static void sleep(long millis) 休眠给定的毫秒数 3 Runnable接口中只有一个方法:run()4 实现线程有两种方式;实现Runnable接口或是继承Thread(此方式目前已不推荐)。...
2013-05-08 15:40:07
113
原创 java数据库编程
1 下载安装postgreSQL 地址:http://www.postgresql.org/download/ 在postgreSQL上可以通过可视化工具生成及处理数据;也可以通过sql语句来实现。 2 生成porperties文件,若是不用这个文件,就需要将信息写在代码中。但是有这个文件会更好,将配置的信息写在此,有更好的可读性。 database...
2013-05-07 17:06:22
119
原创 java解析XML
以最简单的dom方式为例: xml文件:<?xml version="1.0" encoding="utf-8"?> <RESULT> <VALUE> <NO>5015</NO> <NAME>洋仔<
2013-05-05 23:12:22
94
原创 DOM简单知识
DOM是Document Object Model文档对象模型的缩写。DOM是一种与浏览器,平台,语言无关的接口,使得你可以访问页面其他的标准组件。DOM是以层次结构组织的节点或信息片断的集合。 对于特别大的文档,解析和加载整个文档可能很慢且很耗资源,因此使用其他手段来处理这样的数据会更好。这些基于事件的模型,比如 Simple API for XML(SAX),适用于处理数据...
2013-05-05 22:32:33
119
原创 WSDL简单知识
什么是 WSDL?WSDL 指网络服务描述语言。WSDL 使用 XML 编写。WSDL 用于描述网络服务。WSDL 也可用于定位网络服务。WSDL 还不是 W3C 标准。WSDL 是基于 XML 的用于描述 Web Services 以及如何访问 Web Services 的语言。WSDL文档仅仅是一个简单的 XML 文档。WSDL包含一系列描述某个 web s...
2013-05-05 22:24:11
125
原创 XML简单知识
XML 指可扩展标记语言(EXtensible Markup Language。XML 是一种标记语言,很类似 HTML。XML 的设计宗旨是传输数据,而非显示数据。XML 标签没有被预定义。您需要自行定义标签。XML 被设计为具有自我描述性。XML 是 W3C 的推荐标准。XML文件表示的是层次结构,属性文件是一种简单的平面结构。XML 不会做任何事情。XM...
2013-05-05 22:19:28
138
原创 基本算法之4---打印杨辉三角
简要概述:每一个元素是其上面和左上的元素之和。形如: 1 1 1 1 2 1 1 3 3 1..... 代码实现:import java.util.Scanner;public class Test { // 方式1:使用二维数组 public static void printYang1(int n) { int[][] a = ne...
2013-04-30 16:38:13
246
原创 基本算法之3---最大公约数
简要概述:根据递推策略设计辗转相除法:a,b的最大公约数,也是a%b的约数。以此方法递推,直到余数为0 代码实现:import java.util.Scanner;public class Test{ //最大公约数 public static int yue(int n,int m){ if(n==0||m==0) return 0;...
2013-04-30 16:02:35
146
原创 基本算法之2---打印斐波那契数列
简要描述:斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*) 代码实现:import java.util.Scanner;public class Test{ public static int Fibo1(...
2013-04-30 15:26:59
170
原创 基本算法之1---直接插入排序
简要描述:每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。 时间复杂度为O(n^2)。因此插入排序不适用于数据量比较大时候的排序。 代码实现:import java.util.Arrays;public class Test { //原地插入排序,由小到大。 public static void insertSort(int[] ...
2013-04-30 15:21:36
118
SOAP
SOAP 关键词: 简单对象访问协议,XML,HTTP,简单,可扩展,平台无关,编程语言无关,厂商无关。 可在w3school上学习,有专门的章节。http://www.w3school.com.cn/soap/ -------------------------------简单介绍-----------------------------------...
2013-04-30 14:38:09
117
java编程思想笔记3
第7章 复用类1 组合技术:通常用于想在新类中使用现有类的功能,而非它的接口这种情形。需要在新类中嵌入一个现有类的private对象。 2 为了继承,一般的规则是将所用的数据成员都指定为private,将所有指定的方法指定为public。 3 java用super关键字表示超类的意思,目的是不引起递归。 4 java会自动在导出类的构造器中插入对基类构造器的调用,构建过程是从基类“向外”扩...
2013-04-25 16:58:04
95
原创 java编程思想笔记2
第4章 控制执行流程 1 在java中,唯一用到逗号操作符的地方就是for循环中的控制表达式。(注意,不是逗号分隔符) 2 goto仍是java中的一个保留字,但是在语言中并未使用。 3 foreach语法是在SE5中新引入的,是更加简洁的for语法。可用于数组,容器和任何Iterable对象。 -------------------------------------------...
2013-04-22 21:15:22
104
原创 java编程思想笔记1
java编程思想笔记1---------------------------------------------写在前面: 买了Thinking in java 快两年了,最近又翻了出来,打算系统的好好的看一遍。并记录于此,一是为了以后自己回顾,二也算是督促自己。 ---------------------------------------------自己对...
2013-04-22 17:33:39
125
原创 这个程序是哪里不对?
//对元素为String的list进行排序。import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.io.PrintWriter;import java.util...
2013-04-19 21:10:02
154
原创 java细节之spilt
请试说出以下程序的输出:public class Test { public static void main(String[] args) { String a = "1,2,3,4,"; String b = "1,2,3,4,5"; String c = "1,2,3,4,,"; String d = ",,"; String e = "...
2013-04-19 17:00:39
192
原创 一句话概括各个设计模式(转)
1) 抽象工厂模式(Abstract Factory) 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 2) 适配器模式(Adapter) 将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的类可以一起工作。 3) 桥梁模式(Bridge) 将抽象部分与它的实现...
2013-03-06 21:56:34
172
原创 SPAM
搜索引擎垃圾技术(SPAM) 垃圾邮件指的是未经授权、人们不想看见的邮件。垃圾邮件不仅对企业的邮件服务器造成威胁,同样会对个人电脑的系统安全构成威胁。垃圾邮件会堵塞企业的邮件服务器,在服务器的磁盘上写入数千兆字节的无用信件。垃圾邮件会携带着病毒程序,在用户读取邮件的同时,把病毒植入系统。 垃圾邮件无法彻底根除的原因是:某些邮件对于一些人而言可...
2013-03-06 21:55:34
235
原创 Eucalyptus
Eucalyptus :(Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems) 是一种开源的软件基础结构,用来通过计算集群或工作站群实现弹性的、实用的云计算。 Eucalyptus云计算软件,在一个平台上(分为open source版和enterp...
2013-03-05 16:35:52
226
原创 JiBX
JiBX是一款非常优秀的XML数据绑定框架。它提供灵活的绑定映射文件实现数据对象与XML文件之间的转换;并不需要你修改既有的Java类。另外,它的转换效率是目前很多开源项目都无法比拟的。 XML已经成为目前程序开发配置的重要组成部分了,而可以用来操作XML文件的开源项目也逐渐成长起来,比如说流行的:Digester、XStream、Castor、JDOM、...
2013-03-05 16:03:23
239
原创 Mule
Mule 它是一个轻量级的消息框架和整合平台。Mule的核心组件是UMO,UMO实现整合逻辑。UMO可以是POJO,JavaBean等等。它支持20多种传输协议(file,FTP,UDP,SMTP,POP,HTTP,SOAP,JMS等),并整合了许多流行的开源项目,比如Spring,ActiveMQ,CXF,Axis,Drools等。虽然Mule没有基于JBI来构建其架构,但是...
2013-03-05 14:19:19
223
Ganglia & Nagios
Ganglia对OBS进行指标的监控。 Nagios对OBS出现的故障进行告警上报。 ====Ganglia==== Ganglia是一个开源集群监视项目,设计用于测量数以千计的节点。 Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过...
2013-03-05 13:51:55
102
原创 java细节(四)
1 java 事件委托机制的概念,一个源产生一个事件并将它送到一个或多个监听器那里。在这种方案中,监听器简单的等待,直到它收到一个事件。一旦事件被接受,监听器将处理这个事件,然后返回。 2 JDBC调用数据库的基本步骤:导入必要的类,装入 JDBC驱动程序,识别数据源,分配一个 Connection 对象,分配一个 Statement对象,使用 Statement 执行一个查询,从返...
2013-03-05 10:41:32
108
原创 java细节(三)
1 共享数据,必须进行同步存取。当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程。 2 forward 和 redirect的区别 forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏...
2013-03-04 22:53:44
112
原创 java细节(二)
1 java.math包中有两个有用的类:BigInteger和BigDecimal。分别实现了任意精度的整数和浮点数运算。 使用静态的方法可以将普通的数值转换为大数值:BigInteger a = BigInteger.valueOf(100); 对应的加减乘除模运算为:add,subtract,multiply,divide,mod2 数组.length 和 字符串....
2013-03-01 10:49:37
97
原创 java细节(一)
1 只有在需要快速处理单精度数据时,或是需要存储大量数据时,才使用float。2 java没有无符号类型。3 java整型范围与运行的机器无关(正负超过20亿)。4 int 和 float 都是占用4字节。5 java区分大小写。6 浮点数值不适用于禁止出现舍入误差的金融运算中,应该使用BigDecimal类。7 类常量的定义位于main方法的外部。8 数字类型之间...
2013-02-27 21:15:08
135
原创 《C陷阱与缺陷》
#C语言的基本数据类型直接与底层的硬件相对应。 #宏最好只用于命名常量,并为一些适当的结构提供简捷的记法。 #千万不要使用C预处理器来修改语言的基础结构。 #一个严格的可移植的程序应该是: 1 只使用已确定的特性 2 不突破任何由编译器实现的限制 3 不产生任何依赖由编译器定义的或未确定的或未定义的特性的输出。 #程序的可移植性是非常重要的,所以在...
2012-01-04 22:17:14
84
原创 【转】HDFS简介
一、HDFS的基本概念1.1、数据块(block)HDFS(Hadoop Distributed File System)默认的最基本的存储单位是64M的数据块。和普通文件系统相同的是,HDFS中的文件是被分成64M一块的数据块存储的。不同于普通文件系统的是,HDFS中,如果一个文件小于一个数据块的大小,并不占用整个数据块存储空间。1.2、元数据节点(Namenode)和数据节...
2011-11-13 21:13:15
95
原创 hadoop观点
1 如果要研究Hadoop的话,在下载Apache的版本是一种不错的选择。 2 只研究Apache版本的,不足以对Hadoop的理念理解。再对Cloudera版本的研究,会更上一层楼。...
2011-11-13 21:00:56
110
原创 hadoop了解
导言: 在数据量暴增的今天,企业的趋势,过去的统计和未来的预测其实就藏在大量的数据之中,但如何获得?hadoop提供了可靠的存储和高性能并行服务处理。但hadoop真正的价值来自于这项技术的添加件、交叉集成和定制实现。其中又以MapReduce的作用尤为突出。 大数据正是指这些数据以及相关工具、平台和分析技术。 那些追逐“大数据”的机构面临的最大挑战是获得一种平...
2011-11-12 23:55:59
120
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人