Spring 2.0核心技术与最佳实践
基本信息
编辑推荐
*被china-pub会员评为“2007年我最喜爱的十大技术图书”之一
*涉及领域全面,实用性强。.
*以实际项目为出发点,介绍项目开开发中应遵循的最佳开发模式。..
*配置步骤完整,代码注释详细。
*本书几乎覆盖了Spring 2.0版本的新特性。在选择某种解决方案时,优先考虑采用Spring 2.0的新特性并尽量使用Java 5注解进行配置。
内容简介回到顶部↑
本书注重实践而又深入理论,由浅入深且详细介绍了spring 2.0框架的几乎全部的内容,并重点突出2.0版本的新特性。本书将为读者展示如何应用spring 2.0框架创建灵活高效的javaee应用,并提供了一个真正可直接部署的完整的web应用程序——live在线书店。
在介绍spring框架的同时,本书还介绍了与spring相关的大量第三方框架,涉及领域全面,实用性强。本书另一大特色是实用性强,易于上手,以实际项目为出发点,介绍项目开发中应遵循的最佳开发模式。
本书还介绍了大量实践性极强的例子,并给出了完整的配置步骤,几乎覆盖了spring 2.0版本的新特性。
本书适合有一定java基础的读者,对javaee开发人员特别有帮助。本书既可以作为spring 2.0的学习指南,也可以作为实际项目开发的参考手册。
在介绍spring框架的同时,本书还介绍了与spring相关的大量第三方框架,涉及领域全面,实用性强。本书另一大特色是实用性强,易于上手,以实际项目为出发点,介绍项目开发中应遵循的最佳开发模式。
本书还介绍了大量实践性极强的例子,并给出了完整的配置步骤,几乎覆盖了spring 2.0版本的新特性。
本书适合有一定java基础的读者,对javaee开发人员特别有帮助。本书既可以作为spring 2.0的学习指南,也可以作为实际项目开发的参考手册。
作译者回到顶部↑
本书提供作译者介绍
廖雪峰,具有5年Java/J2EE/J2ME开发经验,早在大学本科时就参与了网易上商城(http://mall.163.tom)的开发,日前在摩托罗拉软件集团担任软件工程师,从事基于Eclipse的可视化建模工具的设计和开发。
目前,廖雪峰创建了国内讨论.JavaEE技术的专业网站:JavaF.F.开发网(http://www.iavaeedev.com)。读者可以在JavaEE开发网的论坛中对本书提出中肯的批评和意见,作者将尽最大努力回复读者提出的问题。
.. << 查看详细
目前,廖雪峰创建了国内讨论.JavaEE技术的专业网站:JavaF.F.开发网(http://www.iavaeedev.com)。读者可以在JavaEE开发网的论坛中对本书提出中肯的批评和意见,作者将尽最大努力回复读者提出的问题。
.. << 查看详细
目录回到顶部↑
第1章 初识spring
1.1 javaee平台的诞生和发展
1.2 spring的起源
1.3 spring框架介绍
1.4 spring的设计思想
1.5 如何学习spring
1.6 spring示例:live在线书店应用程序
1.7 小结
第2章 spring快速入门
2.1 搭建开发环境
2.2 第一个spring应用程序
2.3 使用ant构建项目
2.4 使用xdoclet自动生成配置文件
2.5 spring 2.0的新特性
2.6 小结
第3章 使用spring的loc容器管理
3.1 javabean概述
3.2 loc入门
3.3 spring提供的loc容器
3.4 bean初始化
1.1 javaee平台的诞生和发展
1.2 spring的起源
1.3 spring框架介绍
1.4 spring的设计思想
1.5 如何学习spring
1.6 spring示例:live在线书店应用程序
1.7 小结
第2章 spring快速入门
2.1 搭建开发环境
2.2 第一个spring应用程序
2.3 使用ant构建项目
2.4 使用xdoclet自动生成配置文件
2.5 spring 2.0的新特性
2.6 小结
第3章 使用spring的loc容器管理
3.1 javabean概述
3.2 loc入门
3.3 spring提供的loc容器
3.4 bean初始化
前言回到顶部↑
Java开发已经走过十年了!随着因特网的飞速发展,Java技术获得了前所未有的广泛应用。从桌面系统到企业应用,从手机到智能卡,处处都能看到它的身影。从1998年Sun公司发布JavaEE 1.0版本开始,在此后的短短几年内,JaveEE获得了巨大的发展,几乎成为企业开发的代名词。.
作为JavaEE中最核心的EJB技术,也一度成为JavaEE应用的核心。不幸的是,EJB在带来了全新的企业级开发模型的同时,也带来了不必要的复杂性:复杂的接口,难于测试和部署。越来越多的开发人员不断反思EJB开发的复杂性,并试图以更简单的Java技术来简化JavaEE应用的开发。Rod Johnson总结了他数年的JavaEE项目经验,在《Expert-One-on-One:JaveEE Design & Development》一书中详细阐述了EJB带来的复杂性,并提出了一系列以轻量级框架为核心的全新的JavaEE设计思想,阐述了如何组合一系列现有的技术并形成了一个初步的框架,这个框架后来便发展为Spring Framework。通过Spring这个轻量级框架,我们终于可以轻松实现过去必须使用复杂而烦琐的EJB才能实现的功能。
Spring提出了以JavaBean为组件模型、针对接口编程、使用依赖注入等许多优秀的设计思想,并且Spring可以无缝整合许多流行的框架,如Struts、Hibernate等。人们很快意识到以Spring框架为基础来开发JavaEE应用程序可以大大简化应用程序的设计、调试和部署,并得到一个松散耦合的系统架构。因此,Spring得到了越来越广泛的应用。随着Spring 2.0版本的推出,添加了大量新的功能,进一步强化了Spring框架在轻量级JavaEE开发领域的主导地位。
本书特色
本书以Spring 2.0版本为标准,试图向读者展示Spring框架的奥秘,引导读者由浅入深、一步一步地掌握Spring框架的使用方法和设计思想。此外,本书还特别注重实践,力图给出能够在实际项目中应用的解决方案,并给出完整的示例代码。在本书的最后二章中,还详细介绍了基于Spring 2.0框架设计并实现的一个完整的Web应用程序——Live在线书店,并给出了许多有用的设计模式和技巧。
在介绍Spring框架的同时,本书也试图介绍与Spring相关的大量第三方框架,涉及领域全面,实用性强。例如,作为ORM框架的Hibernate、iBatis、JDO及最新的JPA:作为Web框架或组件的Struts、WebWork2、Velocity、FreeMarker、Tiles、JSF;作为Web服务框架的Axis和XFire;作为安全框架的Acegi等。本书对每个框架的集成都给出了完整的Eclipse工程,这些示例可以直接作为基本的配置模型并应用到实际项目中。
本书另一大特色是实用性强,以实际项目为出发点,介绍项目开发中应遵循的最佳开发模式。例如,在开发Web服务时,不是从编写复杂的WSDL文件入手,而是首先设计接口,然后采用Java 5注解来实现Web服务的自动部署;在集成Hibernate时,不是从编写配置文件或创建数据库结构入手,而是首先设计Java实体对象,然后通过Java5注解并配合Ant自动完成数据库表的创建,这些都符合实际项目的开发。
本书还介绍了大量实践性极强的例子,并给出了完整的配置步骤,例如,基于泛型的DAO体系设计,结合Lucene和Compass实现全文搜索功能,利用CAS架设单点登录服务器,利用JMX实现对应用程序的远程监控,利用Filter实现无侵入的页面缓存等,这些都是在实际项目开发中经常需要用的,本书均给出了能够直接运行的配置,并配合屏幕截图尽量详细地给出配置步骤,能够最大限度地让初学者无痛起步。
本书的代码注释也非常详细,并且在书中尽量采用中文注释,便于初学者理解。对于许多复杂的模块设计,本书总是给出流程图或关系图,让读者从设计上能更好地整体把握。
本书还几乎覆盖了Spring 2.0版本的新特性,包括使用AspectJ 5注解实现AOP、对JPA的完整支持、新的声明式事务配置方式、对动态语言的支持等。在选择某种解决方案时,优先考虑采用Spring 2.0的新特性并尽量使用Java 5注解进行配置,这也是本书有别于其他介绍Spring 1.x书籍的地方。..
主要内容
本书按照由浅入深、从理论到实践的顺序来安排内容,主要包括以下内容。
第一部分:介绍Spring的诞生和主要功能,并指导读者在Eclipse中编写一个具体的Spring应用程序,以便读者能对Spring有一个初步认识。
第二部分:分别介绍Spring的各主要功能模块,按照由浅到深及各模块的依赖关系,首先介绍作为整个Spring框架核心基石的IoC容器,然后分别介绍Spring的AOP支持、数据访问策略、事务管理及WebMVC模块。紧接着介绍Spring框架的一些非核心但是可能在实际项目中应用的模块,包括远程访问、任务调度、JMS支持、JMX支持、动态语言支持及Acegi安全框架,读者可以根据实际需要有选择地学习。通过第二部分的介绍,读者能全面掌握Spring框架的几乎所有内容。
第三部分:开发一个完整的基于Spring框架的Web应用程序——Live在线书店。这一部分详细介绍了如何利用Spring设计并实现一个多层JaveEE应用程序。在项目开发中,大量应用实际项目的开发方式,包括使用Ant作为构建工具,使用XDoclet自动生成配置文件等。在Live在线书店的实现细节上,还介绍了许多有用的模式和技巧,包括内存和静态文件的缓存模型、一些JavaScript技巧、应用JMX检测系统性能等。读者完全可以将其应用到实际的项目开发中。
需要注意的是,本书中的图例并不是完全按照UML标准绘制的,图例的设计目的是为了突出问题并试图以最清晰的方式展示给读者,因此,读者不必有UML相关知识,只需明白图例的意义即可。
读者对象
本书适合有一定Java基础的读者,对JaveEE开发人员更是特别有帮助。本书既可以作为Spring 2.0的学习指南,也可以作为实际项目开发的参考手册。
本书不仅希望读者能掌握Spring框架的使用方法,还试图阐述Spring框架的实现原理,因此,许多章节都会涉及一些底层实现,例如,AOP和MVC的手动实现方法。不理解这些原理虽然也不会影响Spring的学习,但是却失去了了解Spring框架底层运行机制的机会,也就无从学习Spring框架的设计思想。因此,强烈建议读者在掌握了Spring框架的使用方法后,更深入到Spring框架内部,最好能结合Spring源代码学习Spring的设计思想。如果在脱离Spring的环境下也能自然而然地应用Spring优秀的设计思想,例如,始终坚持针对接口编程,使用依赖注入,那才算真正掌握了Spring框架的精髓。 在本书的写作过程中,得到了家人和朋友的大力支持。在此,我要特别感谢我的妻子对我的大力支持,我还要感谢同事李江华,他为本书第5章的示例编写了Swing界面,最后,我还要感谢为本书提出宝贵意见的朋友和同事。...
廖雪峰
作为JavaEE中最核心的EJB技术,也一度成为JavaEE应用的核心。不幸的是,EJB在带来了全新的企业级开发模型的同时,也带来了不必要的复杂性:复杂的接口,难于测试和部署。越来越多的开发人员不断反思EJB开发的复杂性,并试图以更简单的Java技术来简化JavaEE应用的开发。Rod Johnson总结了他数年的JavaEE项目经验,在《Expert-One-on-One:JaveEE Design & Development》一书中详细阐述了EJB带来的复杂性,并提出了一系列以轻量级框架为核心的全新的JavaEE设计思想,阐述了如何组合一系列现有的技术并形成了一个初步的框架,这个框架后来便发展为Spring Framework。通过Spring这个轻量级框架,我们终于可以轻松实现过去必须使用复杂而烦琐的EJB才能实现的功能。
Spring提出了以JavaBean为组件模型、针对接口编程、使用依赖注入等许多优秀的设计思想,并且Spring可以无缝整合许多流行的框架,如Struts、Hibernate等。人们很快意识到以Spring框架为基础来开发JavaEE应用程序可以大大简化应用程序的设计、调试和部署,并得到一个松散耦合的系统架构。因此,Spring得到了越来越广泛的应用。随着Spring 2.0版本的推出,添加了大量新的功能,进一步强化了Spring框架在轻量级JavaEE开发领域的主导地位。
本书特色
本书以Spring 2.0版本为标准,试图向读者展示Spring框架的奥秘,引导读者由浅入深、一步一步地掌握Spring框架的使用方法和设计思想。此外,本书还特别注重实践,力图给出能够在实际项目中应用的解决方案,并给出完整的示例代码。在本书的最后二章中,还详细介绍了基于Spring 2.0框架设计并实现的一个完整的Web应用程序——Live在线书店,并给出了许多有用的设计模式和技巧。
在介绍Spring框架的同时,本书也试图介绍与Spring相关的大量第三方框架,涉及领域全面,实用性强。例如,作为ORM框架的Hibernate、iBatis、JDO及最新的JPA:作为Web框架或组件的Struts、WebWork2、Velocity、FreeMarker、Tiles、JSF;作为Web服务框架的Axis和XFire;作为安全框架的Acegi等。本书对每个框架的集成都给出了完整的Eclipse工程,这些示例可以直接作为基本的配置模型并应用到实际项目中。
本书另一大特色是实用性强,以实际项目为出发点,介绍项目开发中应遵循的最佳开发模式。例如,在开发Web服务时,不是从编写复杂的WSDL文件入手,而是首先设计接口,然后采用Java 5注解来实现Web服务的自动部署;在集成Hibernate时,不是从编写配置文件或创建数据库结构入手,而是首先设计Java实体对象,然后通过Java5注解并配合Ant自动完成数据库表的创建,这些都符合实际项目的开发。
本书还介绍了大量实践性极强的例子,并给出了完整的配置步骤,例如,基于泛型的DAO体系设计,结合Lucene和Compass实现全文搜索功能,利用CAS架设单点登录服务器,利用JMX实现对应用程序的远程监控,利用Filter实现无侵入的页面缓存等,这些都是在实际项目开发中经常需要用的,本书均给出了能够直接运行的配置,并配合屏幕截图尽量详细地给出配置步骤,能够最大限度地让初学者无痛起步。
本书的代码注释也非常详细,并且在书中尽量采用中文注释,便于初学者理解。对于许多复杂的模块设计,本书总是给出流程图或关系图,让读者从设计上能更好地整体把握。
本书还几乎覆盖了Spring 2.0版本的新特性,包括使用AspectJ 5注解实现AOP、对JPA的完整支持、新的声明式事务配置方式、对动态语言的支持等。在选择某种解决方案时,优先考虑采用Spring 2.0的新特性并尽量使用Java 5注解进行配置,这也是本书有别于其他介绍Spring 1.x书籍的地方。..
主要内容
本书按照由浅入深、从理论到实践的顺序来安排内容,主要包括以下内容。
第一部分:介绍Spring的诞生和主要功能,并指导读者在Eclipse中编写一个具体的Spring应用程序,以便读者能对Spring有一个初步认识。
第二部分:分别介绍Spring的各主要功能模块,按照由浅到深及各模块的依赖关系,首先介绍作为整个Spring框架核心基石的IoC容器,然后分别介绍Spring的AOP支持、数据访问策略、事务管理及WebMVC模块。紧接着介绍Spring框架的一些非核心但是可能在实际项目中应用的模块,包括远程访问、任务调度、JMS支持、JMX支持、动态语言支持及Acegi安全框架,读者可以根据实际需要有选择地学习。通过第二部分的介绍,读者能全面掌握Spring框架的几乎所有内容。
第三部分:开发一个完整的基于Spring框架的Web应用程序——Live在线书店。这一部分详细介绍了如何利用Spring设计并实现一个多层JaveEE应用程序。在项目开发中,大量应用实际项目的开发方式,包括使用Ant作为构建工具,使用XDoclet自动生成配置文件等。在Live在线书店的实现细节上,还介绍了许多有用的模式和技巧,包括内存和静态文件的缓存模型、一些JavaScript技巧、应用JMX检测系统性能等。读者完全可以将其应用到实际的项目开发中。
需要注意的是,本书中的图例并不是完全按照UML标准绘制的,图例的设计目的是为了突出问题并试图以最清晰的方式展示给读者,因此,读者不必有UML相关知识,只需明白图例的意义即可。
读者对象
本书适合有一定Java基础的读者,对JaveEE开发人员更是特别有帮助。本书既可以作为Spring 2.0的学习指南,也可以作为实际项目开发的参考手册。
本书不仅希望读者能掌握Spring框架的使用方法,还试图阐述Spring框架的实现原理,因此,许多章节都会涉及一些底层实现,例如,AOP和MVC的手动实现方法。不理解这些原理虽然也不会影响Spring的学习,但是却失去了了解Spring框架底层运行机制的机会,也就无从学习Spring框架的设计思想。因此,强烈建议读者在掌握了Spring框架的使用方法后,更深入到Spring框架内部,最好能结合Spring源代码学习Spring的设计思想。如果在脱离Spring的环境下也能自然而然地应用Spring优秀的设计思想,例如,始终坚持针对接口编程,使用依赖注入,那才算真正掌握了Spring框架的精髓。 在本书的写作过程中,得到了家人和朋友的大力支持。在此,我要特别感谢我的妻子对我的大力支持,我还要感谢同事李江华,他为本书第5章的示例编写了Swing界面,最后,我还要感谢为本书提出宝贵意见的朋友和同事。...
廖雪峰
评论交流
共有99人开贴评论 125人参与评论 92人参与打分 查看
评价等级:







发表于:2007-8-11 19:48:00
这本书我看了以后觉得非常好!首先,作者对概念的讲解非常清楚,看完以后对aop,transaction都很容易理解,其次,这本书的实用性很强,以项目开发为基础,讲了很多其他书没有涉及到的地方,比如用xdoclet自动生成spring的xml文件,集成很多常用框架,比如全文搜索,书中的代码非常完整,每个例子运行起来一点问题都没有,对于初学者来说非常有帮助。
另外,这本书用的web服务器不是tomcat而是resin,国内用resin的人好像还不多,但是resin确实比tomcat强不少。
另外,这本书用的web服务器不是tomcat而是resin,国内用resin的人好像还不多,但是resin确实比tomcat强不少。
| 我要写评论 |
| 查看所有评论交流(共99条) |


点击看大图





加载中...
