自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

云时代架构

做互联网时代最适合的架构,回归架构之美。

  • 博客(37)
  • 资源 (7)
  • 收藏
  • 关注

原创 深入剖析Spring Web源码(二十一) - 征求建议

首先,感谢CSDN提供了优秀的博客和论坛平台帮助IT人员互相交流和学习,CSDN作为国内最大的IT类交流网络为国内的IT事业做出了巨大贡献,在这里向全体CSDN工作人员表示致敬。本人从事J2EE开发已经将近6个年头,熟练使用J2SE平台提供的各种技术,了解和掌握J2EE平台提供的各种服务,并且对J2EE的开源项目和框架有所研究。几个月前,我开始读Spring源代码,一边读代码,一边写总结,把总结发到了CSDN博客,大家可以参考我的博客文章http://blog.csdn.net/robertleepeak/

2011-02-17 10:34:00 6819 18

翻译 精通HADOOP(十二) - 整理的文档和日志的索引(第一二章)

整理的文档把已经完成的前两章的《精通HADOOP》系列的翻译日志整理成为文档,供大家下载阅读,希望对大家有所帮助。我将陆续翻译后续章节,希望能尽快发布出来。如果您有任何建议或者发现任何错误,请留言。我会根据大家的意见更改文章内容,格式,组织方式等等。请登陆CSDN下载文档,下载此文档不需要资源分,下载地址如下,中文版《精通HADOOP》(第一二章)PDF格式下载连接你也可以通过下面链接下载本书的原版英文版《Pro Hadoop》和我的其他资源,原版英文版《Pro Hadoop》下载连接 我的下载主页日志的索

2010-12-15 21:45:00 11382 18

翻译 精通HADOOP(十一) - MAPREDUCE任务的基础知识 - 总结

1.1 总结这章阐述了如何执行一个MapReduce作业。你现在对JobConf对象有一个基本的理解,以及了解如何使用它通知框架你的作业需要的元素。你已经看见如何去写mapper和reducer类,以及如何使用reporter对象,reporter对象能够提供足够的关于你的作业的运行时的信息。最后,输出块是非常重要的,通过它你可以知道什么时候和为什么你配置你的作业去reduce, 以及你需要使用多少个reducer。作为一个优秀的Hadoop专家,你看到在mapper和reducer类中打开的文件是空的或者

2010-11-30 02:06:00 5503

翻译 精通HADOOP(十) - MAPREDUCE任务的基础知识 - 创建客户化的Mapper和Reducer

1.1 创建客户化的Mapper和Reducer 正如你所见,MapReduceIntro类中你的第一个Hadoop程序产生了排序的输出,但是,因为作业的关键字是数字的,这个排序不是你所期望的,因为它按照字符排序,而不是按照数字排序。现在,我们看看如何使用客户化的Mapper进行数字排序。然后我们会看看如何使用客户化的Reducer输出一个容易解析的格式的内容。 1.1.1 设置客户化的Mapper 进行数字排序听起来并不难。现在我们把输出的关键字设置为框架提供的另外一个LongWritable类型:

2010-11-30 02:02:00 13003

翻译 精通HADOOP(九) - MAPREDUCE任务的基础知识 - 执行作业

1.1 执行作业配置你的MapReduce作业的最终目标是执行作业。MapReduceIntro.java样例程序阐述了一个简单的方式执行一个作业,如列表2-1所示, logger .info("Launching the job.");/** Send the job configuration to the framework* and request that the job be run.*/final RunningJob job = JobClient.runJob(conf);

2010-11-30 01:53:00 6904

翻译 精通HADOOP(八) - MAPREDUCE任务的基础知识 - 配置作业

1.1 配置作业 所有的Hadoop作业有一个用来配置实际上的MapReduce任务和提交它到Hadoop框架的主程序。JobConf对象是用来处理这些配置的。MapReduceIntro样例类为你使用JobConf类并且提交一个作业到Hadoop框架提供了一个模板。所有的代码都依赖于MapReduceIntroConfig类,如下列表2-4所示,这个类确保了你设置了正确的输入和输出目录。 列表2-4 MapReduceIntroConfig.java package com.apress.ha

2010-11-30 01:45:00 9941 2

翻译 精通HADOOP(七) - MAPREDUCE任务的基础知识 - Hadoop MapReduce任务的基本构成要素

1 MapReduce任务的基础知识 这一章,整体的介绍MapReduce任务。读完这章,你能编写和执行单机模式的MapReduce任务程序。 这章中的样例程序假设你已经完成了第一章的设置。你可以在一个专用的本地模式配置下,使用一台单机执行这些样例程序,你不需要启动Hadoop核心框架。对于调试和单元测试,单机模式配置也是最理想的。你能够从Apress网站(http://www.apress.com)上这本书所在的页面下载这些样例代码。这些可下载的代码也包含一个用来执行样例的JAR文件。 下面我们就开

2010-11-30 01:28:00 9846

翻译 精通HADOOP(六) - 初识Hadoop - 解决问题/总结

1.1 解决问题如果你在执行本书的样例程序过程中遇到问题,最有可能的就是因为执行环境的不同引起的,也可能由于你的计算机的存储空间不足导致问题。 然后,下面的环境变量的设置是重要的: JAVA_HOME:这是JDK的安装根路径。所有的样例程序假设JAVA_HOME环境变量指向JDK 1.6_07的安装根路径。这里假设JDK安装在/usr/java/jdk1.6.0_07。所以,我们应该设置JAVA_HOME如下:export JAVA_HOME=/usr/java/jdk1.6.0_07。 DADOOP_HO

2010-11-14 14:14:00 7604

翻译 精通HADOOP(五) - 初识Hadoop - 执行和测试Hadoop样例程序

  1.1 执行和测试Hadoop样例程序 在Hadoop安装目录中你会找到包含Hadoop样例程序的JAR文件,你可以用它来试用Hadoop。在你执行这些样例程序以前,你应该保证你的安装是完全的和你的执行时环境的设置是正确的。我们在前面小节中提到,check_basic_env.sh脚本能够帮助你校验安装,如果安装有任何错误,它会提示你改正。   1.1.1 Hadoop的样例代码 hadoop-0.19.0-examples.jar文件包含着数个可以直接运行的样例程序。我们在图标1-4中列出包

2010-11-14 13:49:00 13845

翻译 精通HADOOP(四) - 初识Hadoop - 安装Hadoop

1.1 安装Hadoop 和其他的软件一样,使用Hadoop需要一些先决条件。如果你安装了Cywin,在Windows上执行和开发Hadoop应用程序也是可能。但是,我们强烈建议你使用Linux作为运行Hadoop的产品平台。 请注意,你需要有Linux和Java的基础知识才能使用Hadoop。我们使用Bash脚本来启动这本书的样例程序。 1.1.1 安装的前提条件 我们需要在下列的环境下运行这本书的样例程序, l Fedora 8 l Sun Java 6 l Hadoop 0.19.0 o

2010-11-13 21:05:00 11784 1

翻译 精通HADOOP(三) - 初识Hadoop - Hadoop介绍

1.1 Hadoop介绍 Hadoop是阿帕奇软件基金下的顶级项目,这个项目下面拥有多个诞生于阿帕奇孵化器的子项目。Hadoop项目提供和支持开源软件的发展,它提供一个框架,用于开发高度可扩展的分布式计算应用软件。Hadoop框架负责处理任务并行分配的细节,使得应用程序开发者可以专注于应用程序逻辑上。 请注意,Hadoop徽标是一个胖胖的黄色的大象。而且Hadoop碰巧是首席架构师的宝宝的黄色大象的名字。 Hadoop项目主页(http://hadoop.apache.org/)谈到: Had

2010-11-11 21:04:00 16647 2

翻译 精通HADOOP(二) - 初识Hadoop - MapReduce模型介绍

1 初识Hadoop 一个独立的低端硬件通常不能满足应用程序对资源的需求。许多企业发现他们的业务流软件并不是安装在一台成本效益较好的计算机上。对于他们来说,一个简单的解决方案就是购买具有更多内存和CPU的高端硬件,这通常需要巨额资金。这个解决方案能够达到理想的效果只要你能买到最高端的硬件,但是通常来说,预算是最主要的问题。我们有另外一个可选方案,那就是构建一个高性能的集群。一个集群能够模拟成为一个单个计算机,然而,它需要专业的安装和管理服务。现今,存在着许多专有的高性能的并且造价昂贵的集群。 幸运的是,

2010-11-10 22:01:00 15772

翻译 精通HADOOP(一) - 翻译前言

云计算是一个越来越流行的分布式计算技术,Hadoop是云计算的开发平台(PAAS),于是,我已经学习有一段时间了,先后看了如下两本相关书籍,Hadoop: The Definitive Guide Apress Pro Hadoop在网络上搜索了一下,前者已经有出版社翻译成中文版,但是,后者却没有,于是,萌生一个念头,把第二本书翻译成中文,希望能对大家有所帮助。这本书大约有400多页,计划每天翻译5页,需要80天,排除很多天不能抽出时间进行翻译,保守估计需要半年时间,希望大家关注,也感谢大家的支持。

2010-11-10 21:59:00 14054 14

原创 深入剖析Spring Web源码(二十) - Spring安全 - 横向剖析

6. Spring安全Spring安全是一个功能强大的高可插拔的认证和赋权框架。它是Spring应用程序的领域内的标准的安全策略。Spring安全是最成熟的并且被广泛应用的Spring项目之一。自从2003年创建以来,它是一个独立于Spring框架的一个单独项目,这个项目同样是通过阿帕奇2.0协议发布,所以,它可以应用到任何项目,这包括开源项目,免费项目和商业项目。这一章,我们将深入的彻底剖析Spring安全框架的流程和架构。 6.1 横向剖析Spring安全框架主要应用在需要认证与赋权的Web应用程序上。

2010-11-07 15:33:00 6303

原创 深入剖析Spring Web源码(十九) - 整理的文档和日志的索引(第一版)

整理的文档 把所有的《深入剖析Spring Web》系列日志整理成为文档,供大家下载阅读,希望对大家有所帮助。里面有些章节尚未完成,所以称为第一版。希望不久的将来,能把没有完成的章节在第二版里尽快完成。如果您有任何建议或者发现任何错误,请留言。我会根据大家的意见更改文章内容,格式,组织方式等等。 请登陆CSDN下载文档,下载此文档不需要资源分,下载地址如下, Word格式下载连接PDF格式下载连接HTML格式下载连接 我的下载主页  日志的索引 整理了所有的《深入剖析Spring Web》系列日志的地址,并

2010-10-23 22:52:00 12187 13

原创 深入剖析Spring Web源码(十八) - 视图解析和视图显示 - 更多的视图解析器

1.1.1   更多的视图解析器上一节中,我们介绍了基于URL的视图解析器和视图的实现。事实上,还存在这一些视图解析器,他们不仅支持某一种类型的视图实现,而是能在多种视图实现中互相转换和选择。这一节中我们将分析四种这样类型的视图解析器的实现。1.1.1.1             Bean名视图解析器Bean名视图解析器通过把逻辑视图名作为Web应用程序环境中的Bean名来解析视图。如下代码所示,publicclass BeanNameViewResolver extends WebApplicationO

2010-10-23 21:58:00 6731

原创 深入剖析Spring Web源码(十七) - 视图解析和视图显示 - 基于URL的视图解析器和视图

4.3 视图解析和视图显示上一节,深入的剖析了作为总控制器的派遣器Servlet如何通过处理器映射查找处理器,并且通过处理器适配器进行适配调用处理器实现的业务逻辑服务,进而返回逻辑视图名和模型数据对象。这一节,我们将分析作为总控制器的派遣器Servlet如何解析视图和显示视图。这是Spring Web MVC流程中最后一个关键步骤。由于视图显示技术的多样性,存在很多视图解析器和视图的实现,这一节我们将分析典型的视图解析器和视图显示的实现。他们是基于URL的视图解析器,然后,对于其他更多的视图解析器和视图的实

2010-10-23 20:26:00 9213 1

原创 深入剖析Spring Web源码(十六) - 处理器映射,处理器适配器以及处理器的实现 - 拦截器的实现架构

4.2.2.4 拦截器的实现架构从前面的章节分析中得知,处理器映射机制支持处理器拦截器功能。处理器拦截器应用一定的功能在满足一定条件的请求上。处理器拦截器必须实现HandlerInterceptor接口,它定义了三个方法如下,preHandle()任何处理器调用之前调用的方法。它返回一个布尔值,如果返回真,则继续调用处理器链的其他处理器或者拦截器,如果返回假,则停止调用处理器链的其他处理器或者拦截器,在这种情况下,它假设拦截器已经处理了HTTP请求,而且写入了HTTP响应。postHandle()任何处理器

2010-10-12 00:10:00 8579

原创 深入剖析Spring Web源码(十五) - 处理器映射,处理器适配器以及处理器的实现 - 处理器的实现架构 - HTTP请求处理器

4.2.2.3.3 HTTP请求处理器HTTP请求处理器是用来实现基于HTTP请求的远程调用的处理器。在前面章节基于流程的分析中,我们已经对典型的HTTP请求处理器进行了详细的分析和代码注释。事实上,除了HTTP调用服务导出器(HttpInvokerServiceExporter)的实现,还有更多的基于HTTP请求的远程调用的实现。如下类图所示,图表4‑36如上图所示,除了HTTP调用服务导出器以外,还有两个远程调用的实现类,他们是Hessian服务导出器和Burlap服务导出器,他们的实现流程和HTTP调

2010-10-10 21:30:00 4952

原创 深入剖析Spring Web源码(十四) - 处理器映射,处理器适配器以及处理器的实现 - 处理器的实现架构 - 注解控制器

4.2.2.3.2 注解控制器上一小结中,我们剖析了简单控制器的实现体系结构。事实上,自从Spring 2.5引进了注解方法控制器, 已经不推荐使用简单控制器的实现体系结构中的基于Form的实现类。注解控制器是通过在一个简单的Java对象上声明具有元信息的注解来实现的。所以,注解控制器并没有接口,抽象类或者实体类的实现体系结构。然而,声明在简单的Java对象上的注解则扮演着至关重要的角色。下面我们根据不同类型的注解进行剖析,1.         标识控制器和控制器方法的注解@Controller一个注解控制

2010-10-10 21:18:00 5345

原创 深入剖析Spring Web源码(十三) - 处理器映射,处理器适配器以及处理器的实现 - 处理器的实现架构 - 简单控制器

1.1.1.1             处理器的实现架构作为总控制器的派遣器Servlet将得到的处理器传递给支持此处理器的处理器适配器,处理器适配器然后调用处理器中适当的处理器方法,最后返回处理结果给派遣器Serlvet。处理器架构中并没有简单的处理器接口定义,任何一个对象类型都可以成为处理器,每个类型的处理器都有一个对应的处理器适配器,用于将HTTP请求适配给一定类型的处理器。处理器根据类型分为简单控制器,注解控制器和HTTP请求处理器。我们在讨论基于流程的实现的小节中,已经对每种类型中的典型实现类进行

2010-10-10 20:18:00 3419

原创 深入剖析Spring Web源码(十二) - 处理器映射,处理器适配器以及处理器的实现 - 处理器适配器的实现架构

1.1.1.1             处理器适配器的实现架构作为总控制器的派遣器Servlet通过处理器映射得到处理器后,会轮询处理器适配器模块,查找能够处理当前HTTP请求的处理器适配器的实现,处理器适配器模块根据处理器映射返回的处理器类型,例如,简单的控制器类型,注解控制器类型或者远程调用处理器类型来选择某一个适当的处理器适配器的实现来适配当前的HTTP请求。前一小节中,我们根据流程的实现分析了简单控制器处理器适配器(SimpleControllerHandlerAdapter),注解方法处理器适配器

2010-10-06 00:25:00 4003

原创 深入剖析Spring Web源码(十一) - 处理器映射,处理器适配器以及处理器的实现 - 处理器映射的实现架构

<br /> 2.2.2.1 处理器映射的实现架构<br /> <br />作为总控制器的派遣器Servlet首先会轮询处理器映射模块,查找能够处理当前请求的处理器,处理器映射模块根据当前请求的URL返回简单的控制器类型,注解控制器类型或者远程调用处理器类型。前一小节中,我们根据流程的实现分析了Bean名URL处理器映射(BeanNameUrlHandlerMapping)和缺省注解处理器映射(DefaultAnnotationHandlerMapping)。事实上,在处理器映射的实现体系结构中还有其他的实

2010-09-29 23:47:00 5671 1

原创 深入剖析Spring Web源码(十) - 处理器映射,处理器适配器以及处理器的实现 - 基于HTTP请求处理器流程的实现

4.2.1.3 基于HTTP请求处理器流程的实现

2010-09-29 00:37:00 4301

原创 深入剖析Spring Web源码(九) - 处理器映射,处理器适配器以及处理器的实现 - 基于注解控制器流程的实现

1.1.1.1                  基于注解控制器流程的实现上一节,我们详细的分析了基于简单控制器流程的实现,事实上,许多的简单控制器的实现已经不被推荐使用。自从2.5发布以后,Spring开始鼓励使用基于注解控制器的流程。基于注解的控制器流程具有实现方法简单,程序代码清晰易读等特点。基于注解控制器的流程和基于简单控制器的流程的实现非常相似,派遣器Servlet在处理一个HTTP请求的时候,它通过缺省注解处理器映射(DefaultAnnotationHandlerMap

2010-09-28 17:37:00 8500 3

原创 深入剖析Spring Web源码(八) - 处理器映射,处理器适配器以及处理器的实现 - 基于简单控制器流程的实现

1.1.1.1                  基于简单控制器流程的实现简单控制器的流程定义了简单的控制器接口(Controller),在流程的开始,它通常通过Bean名字URL处理器映射(BeanNameUrlHandlerMapping)来获得支持此HTTP请求的一个控制器实例和支持这个控制器的处理器拦截器(HandlerInterceptor)。通过简单控制处理适配器(SimpleControllerHandlerAdapter)传递HTTP请求到简单的控制器(

2010-09-20 13:45:00 5984

原创 深入剖析Spring Web源码(七) - DispatcherServlet的实现 - 根共享环境的加载/其他Servlet

 1.1.3   根共享环境的加载 上一节中我们在分析框架Sevlet是如何初始化Web应用程序环境的时候得知,一个Servlet拥有一个专用的子环境,但是这个子环境可以而且通常引用一个根共享环境,这个根共享环境是通过Servlet环境监听器加载的。也就是说,当一个Servlet环境,也就是一个应用程序被容器加载时,监听器通过监听这个初始化事件初始化根共享Web应用程序,而当一个Servlet环境析构时,监听器功过监听这个析构时间析构共享的Web应用程序环境。下面是整个根共享环境加载的类图,图表4‑9我们可

2010-09-17 20:30:00 5555

原创 深入剖析Spring Web源码(六) - DispatcherServlet的实现 - 派遣器Servlet及其父类

1.1.1   派遣器Servlet及其父类上节我们介绍了Servlet容易规范中的HTTP Servlet的实现,它对于各种HTTP方法使用了占位符的实现,这些占位符方法需要子类进一步重写,这一小节中我们将讨论,派遣器Servet是如何实现这些占位符方法来完成Spring Web MVC的工作流的。下图是派遣器Servlet完整的实现体系,图表4‑4从上面实现类图可以看到,继承自HTTP Servlet的直接子类就是Http Servlet Bean。这个类的唯一功能就是把Servlet配置的参数作为一个

2010-09-17 19:39:00 7453 4

原创 深入剖析Spring Web源码(五) - DispatcherServlet的实现 - 通用Servlet和HTTP Servlet

1.1.1  通用Servlet和HTTP ServletHTTP(Hyper Text TransferProtocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2616。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URI、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。服务器以一个状态行作为响应,相应的内容包括消息协议的版本,成功或者错误编码加

2010-09-17 17:46:00 5384

原创 深入剖析Spring Web源码(四) - DispatcherServlet的实现

1    Spring Web MVC的架构实现Spring是一个轻量级J2EE框架。它可以运行在任何一个Web容器上。事实上,Spring的入口点就是实现或者继承了Web容器规范中的Servlet,监听器(Listener)和过滤器(Filter)。这一章我们将详细讨论SpringWeb MVC架构的具体实现。 1.1    DispatcherServlet的实现DispatcherServlet是一个经过多个层次最终继承自Servlet规范中的HttpS

2010-09-17 17:35:00 5900 1

原创 深入剖析Spring Web源码(三) - Spring Web MVC工作流

1       Spring Web MVC工作流这一章,我们将描述Spring Web MVC的各个组件,组件接口,以及各个组件之间如何协调通信,进而理解Spring Web MVC框架的基本工作原理。1.1    组件以及组件的接口Spring Web MVC是由若干组件组成的,这些组件相互独立又相互协调工作共同完成Spring Web MVC工作流。每个组件都有清晰的接口定义,接口后面都有一个设计良好的类实现体系结构,清晰的抽象出公用的逻辑并且实现在通用的抽象类里,同时提供常用的具体实现类。进而实现一

2010-09-17 13:37:00 8422 8

原创 深入剖析Spring Web源码(二) - Web MVC介绍

1 Web MVC 介绍这一章,我们将首先介绍经典的 MVC体系结构,通过对比 MVC和 Web MVC的区别,来深入理解 Web MVC的由来和特点。1.1 MVC 体系结构 首先,我们介绍一下 MVC的体系结构。 MVC是软件工程中的一种软件架构模式。它把软件系统分为三个基本部分:模型,视图和控制器。如图表 2 ‑1 。图表 2 ‑2MVC体系结构实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能

2010-09-17 10:00:00 6124 1

原创 深入剖析Spring Web源码(一) - 前言

1      前言Spring是一个优秀的轻量级企业应用开发框架,是Java开发中最流行的工具之一,Spring在Java企业开发中具有举足轻重的作用。Spring是基于 JavaBeans的控制翻转(Inversion of Control,IoC)原则进行配置管理,使得应用程序的组建更加快捷简易。并且对AOP程序设计有较好的支持,使程序接口清晰易读,并且通过AOP实现了声明式的安全和事物。Spring的抽象的数据存取层次支持多种ORM框架。并且对J2E

2010-09-17 09:50:00 6796 4

不再使用此博客

不再使用此博客 

2010-09-01 21:32:57 139

不再使用此博客

不再使用此博客

2010-09-01 21:19:12 99

不再使用此博客

不再使用此博客

2010-09-01 21:14:27 96

不再使用此博客

不再使用此博客

2010-09-01 21:11:06 117

精通Hadoop(第一二章)

精通Hadoop(第一二章),《Pro Hadoop》中文版。

2010-12-15

Hadoop - The Definitive Guide

Hadoop - The Definitive Guide (Hadoop权威指南) 原版 英文版

2010-11-10

Apress - Pro Hadoop

Apress - Pro Hadoop (精通Hadoop) 原版 英文版。

2010-11-10

空空如也

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

TA关注的人

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