本书通过一个完整的电子商务应用的设计和开发项目,引领读者学习Struts-Spring-Hibernate架构下完整的开发体系,以及Struts-Spring-Hibernate的各个组件在项目开发中的实际应用。通过对该项目各个功能模块需求分析、系统分析设计、部署实现及测试等全过程的分析,使读者能够快速掌握Struts-Spring-Hibernate中最核心的组件,并能够依据书中提供的项目案例定制所需的功能,开发专业的Java应用系统。\r\n 本书可作为欲学习基于Struts-Spring-Hibernate的Java应用开发学习者的指导用书,也可作为Java应用开发的培训教材,还可作为Struts-Spring-Hibernate开发人员的参考书。
第1篇 整体介绍\r\n 第1章 Struts-Spring-Hibernate概述\r\n 1.1 表示层\r\n 1.2 持久层\r\n 1.3 业务层\r\n 1.4 域模块层\r\n第2篇 项目分析设计\r\n 第2章 项目开发流程与分析设计概述\r\n 2.1 项目开发流程\r\n 2.1.1 项目生命周期\r\n 2.1.2 项目开发阶段\r\n 2.2 UML概述\r\n 2.2.1 用例图\r\n 2.2.2 类图\r\n 2.2.3 对象图\r\n 2.2.4 状态图\r\n 2.2.5 顺序图\r\n 2.2.6 协作图\r\n 2.2.7 活动图\r\n 2.2.8 组件图\r\n 2.2.9 部署图\r\n 第3章 网上书店项目概述\r\n 3.1 项目需求分析\r\n 3.2 项目系统分析和设计\r\n 3.2.1 数据库设计(data model)\r\n 3.2.2 面向对象分析设计\r\n 3.3 Struts-Spring-Hibernate实现\r\n 3.3.1 开发工具与环境\r\n第3篇 Struts-Spring-Hibernate核心技术\r\n 第4章 Struts技术\r\n 4.1 MVC模式概述\r\n 4.2 MVC与Struts映射\r\n 4.3 Struts的工作流程\r\n 4.4 创建Controller组件\r\n 4.4.1 web.xml中ActionServlet配置\r\n 4.4.2 struts-config.xml配置\r\n 4.5 创建Model组件\r\n 4.5.1 ActionForm Bean类\r\n 4.5.2 Action类\r\n 4.5.3 JavaBean概述\r\n 4.6 创建View组件\r\n 4.6.1 国际化消息\r\n 4.6.2 表单(form)和FormBean的交互\r\n 4.6.3 Struts常用标记库(Struts Tag Library)\r\n 4.6.4 其他的表示技术\r\n 4.6.5 Struts与JSTL(JSP Standard Tag Library)标记库\r\n 4.7 Struts中文方案\r\n 4.8 Struts实战开发步骤\r\n 第5章 Hibernate技术\r\n 5.1 Hibernate概述\r\n 5.2 Hibernate单表的对象/关系数据库映射\r\n 5.2.1 持久化层(Persistent Objects)\r\n 5.2.2 DAO(Data Access Object)\r\n……\r\n 第6章 Spring技术\r\n第4篇 测试与其他相关技术\r\n 第7章 测试概述\r\n 第8章 CVS(Concurrent Versions System)使用\r\n 第9章 Ant工具使用\r\n 第10章 Log4j日志工具\r\n第5篇 Struts-Spring-Hibernate高级部分\r\n 第11章 Struts高级部分\r\n 第12章 Hibernate高级部分\r\n 第13章 Spring高级部分\r\n参考文献\r\n结束语
梁立新,外籍软件专家,具有十多年专业的软件开发、架构设计和项目管理的经验。擅长面向对象的分析设计及基于J2EE及SSH架构的Java 软件技术和基于Unix平台的C/C++编程技术。毕业于中国科学技术大学,获硕士学位。之后留学于美国,获伊利诺依理工大学硕士学位。曾先后工作于美国华尔街咨询服务公司和加拿大多伦多证券交易所,担任高级软件设计师。参与设计建设了美国著名银行JP Morgan网上人力资源系统和加拿大最大的证券交易中心Toronto Stock Exchange股票交易系统和市场数据。
Java是长时间以来最卓越的程序语言。
——Bill Gates
目前Java项目开发中炙手可热和前景广阔的一套技术架构是SSH(Struts-Spring-Hibernate)。
作者从事软件设计开发工作十多年,最近才萌发了写一本好书的想法,因为作者希望推广一种最有效的学习与培训的捷径。这就是Project-driven training,也就是用项目实战来带动理论的学习。基于此,作者围绕一个完整的电子商务项目(online bookstore)来贯穿Struts-Spring-Hibernate各个模块的理论讲解。项目实战可以使读者对技术应用有明确的目的性(为什么学),对技术原理能更好地融会贯通(学什么),也可以更好地检验学习效果(学得怎样)。
本书的内容是以作者在亚思晟高端Java培训过程中的讲义和项目实战为基本素材整理出来的,同时结合了作者多年项目设计开发经验,具有良好的实践性和可操作性,并且具体化、通俗化。
本书特点
1.重项目实践
笔者多年项目开发经验的一个体会是“IT是做出来的,不是想出来的”。理论虽然重要,但一定要为实践服务!以项目为主线,带动理论的学习是最好、最快、最有效的方法!通过此书,笔者希望读者对项目开发流程有个整体了解,减少对项目实战的盲目感和神秘感,能够根据本书的体系循序渐进地自己动手做出自己的真实项目来。
2.重理论要点
本书并不是针对Struts、Spring、Hibernate每个技术的详细介绍,而是以项目实践为主线,着重介绍这三个技术最重要、最精华的部分,以及它们之间的融会贯通,这才是本书的关键特色!那些参考文档性质,以及需要记忆的细节大家可以参考本书中高级部分。
总之,既有整体框架,又有重点技术。一书在手,理论清晰,项目无忧!
本书的组织结构和学习指南
常常有开发人员和学员问我:“什么是学习Java的最佳途径?”
我的回答是:“多做,以项目驱动。”
学员又继续问我:“那学习理论就不重要了吗?”
我的回答是:“当然也重要,但同样需要以项目驱动。”
为什么呢?试想一下,当你面对上百页的参考书或者文档时,是否会茫然不知所措,不知如何开始,不知谁更重要。所以,只有以项目驱动才能更好地明确重点和主线,才能更好地分配时间和精力,才能最有效地学习,并提高自身开发能力。
正确的学习途径是通过项目把握整体概貌,之后深入局部细节,系统学习理论,最后不断优化和扩展细节,完善整体框架和改进项目。相信读者通过实践驱动理论,理论完善实战,由整体到局部,再从局部到整体地反复学习,最终会熟练掌握基于Struts-Spring- Hibernate的Java技术。
本书围绕一个完整的电子商务项目来组织和设计学习Struts、Spring、Hibernate。
根据项目开发流程,组织本书内容结构如下。
第1篇 整体介绍
第1章 Struts-Spring-Hibernate概述。如何建立多层(Multi-tier)Web应用的架构,并且怎样让各个应用层保持一致?如何整合框架,以便让每层以一种松散耦合的方式彼此作用而不用管底层的技术细节?这里我们讨论使用3种开源框架的策略:表示层用Struts;业务层用Spring;持久层用Hibernate。之后我们描述了Struts-Spring-Hibernate的各自分工与职责,以及如何整合在一起工作。通过这一章的介绍,读者会对Struts-Spring-Hibernate 架构有一个宏观的了解,建立一个整体概貌。
第2篇 项目分析设计
在第2章中我们介绍了项目开发的背景知识,包括项目整体流程(RUP)和UML语言。RUP(Rational Unified Process)是目前最流行的一套项目开发流程模式,它的基本特征是通过多次迭代完成一个项目的开发,每次迭代会带来项目整体的递增。UML(Unified Modeling Language)是实现项目开发流程的一个重要工具,它是一套可视化建模语言,由各种图来表达,包括静态模型图和动态模型图。通过这一章的学习,我们给读者建立项目开发的整体框架,为后面的项目介绍做好铺垫。
第3章我们重点介绍了一个完整的电子商务项目(online bookstore)。我们以RUP流程和UML工具为指导,使用Struts-Spring-Hibernate设计和开发网上书店项目,提供了完整的需求分析、系统分析设计UML图和数据库设计图等。
第3篇 Struts-Spring-Hibernate核心技术
根据项目开发流程,下一步进入的是项目具体实现阶段,也就是使用Struts、Spring、Hibernate技术开发和编码。
第4章我们讲解了Struts技术。Struts框架主要用来解决用户接口(UI)层,及其与后端应用层之间的交互。我们通过项目中的实例,详细展开了Struts的工作原理、开发流程,以及MVC(Model-View-Controller)组成模块。
第5章我们讲解了Hibernate技术,它负责数据持久层的处理。我们首先介绍了Hibernate的整体结构。之后通过项目中的实例,详细展开了Hibernate 持久化对象(Persistence Object)、数据存取对象(Data Access Object)、查询语言(Hibernate Query Language)等重要模块。
第6章讲解了Spring技术,它是连接Struts与Hibernate的桥梁,同时它很好地处理了业务逻辑层。我们首先介绍了Spring的整体框架,以及最重要的两个概念:控制反转(IoC)和面向方面编程(AOP)。之后通过项目中的实例,讲解了Spring激动人心的地方,也就是Spring对Hibernate和Struts的集成部分。至此,读者终于掌握了项目实现的完整方案。
第4篇 测试与其他相关技术
根据项目开发流程,下一步的任务是测试工作。第7章我们讲解了测试基本原理和技术。结合项目实战,我们重点讲解了Junit和Jmeter测试工具的使用。其中,使用Junit可以很好地进行单元测试,而Jmeter可以帮助我们完成压力测试,以保证应用系统的性能。
第8章我们介绍了项目开发中的团队协作工具CVS。CVS是并发版本系统(Concurrent Versions System)的英文缩写,它是主流的开放源码网络透明的版本控制系统。CVS对于从个人开发者到大型分布团队都是有用的。我们在这里介绍了CVS的基本原理、UNIX/Windows下CVS服务器的配置,以及Eclipse作为CVS客户端的配置和使用。
第9章我们介绍了Ant工具的使用。Ant是一个基于Java的Build工具。它可以使你通过Ant脚本语言,自动将项目拷贝到某个目录,发布项目,或者生成一些代码等。总之,它可以帮助你完成项目开发中除了开发代码以外的大部分辅助性工作。这里我们结合项目,讲解了Ant的安装、build.xml和build.proerties的开发。
第10章我们介绍了log4j工具的使用。我们讨论了企业应用程序日志的各个方面的问题,介绍了log4j日志API的概述,学习一些最好的编写日志代码的实践,并了解如果需要在产品环境中处理日志。这里我们同样紧密结合了项目里的具体实例。
第5篇 Struts-Spring-Hibernate高级部分
Struts、Spring、Hibernate每一个技术都是一个大的课题,在一本书里介绍难度是相当大的。
因为本书是以项目实践为主线,所以着重介绍的是这3个技术最重要、最精华的部分,以及它们之间的融会贯通。参考文档和需要记忆的技术细节大家可以参考本书Struts-Spring- Hibernate高级部分。
第11章我们介绍了Struts高级部分。我们讨论了模块(Module)化支持、DynaActionForm;扩展Struts、Struts异常处理、Struts与Web服务(Web Services)、Struts测试概述等内容。
第12章我们介绍了Hibernate高级部分。我们讨论了组件(Component)映射、继承映射(Inheritance Mappings)、性能优化(Improving performance)、工具指南、事务和并行(Transactions And Concurrency)、最佳实践(Best Practices)等内容。
第13章我们介绍了Spring高级部分。我们讨论了Spring对JDBC的集成功能、Spring MVC Web框架、Spring对EJB的集成、Spring对时序调度的支持、使用Spring邮件抽象层发送E-mail、通过Spring使用远程访问和Web服务、Spring对JMS支持、集成表现层、Spring与EJB3.0、源代码级的元数据支持、Spring beans.dtd文档等内容。
它们会对以后的工作和学习提供有益的补充和帮助。
在讲解这些理论内容时,我们采用的主要实例都来自于项目。最后我们提供了项目的全部源代码和部署运行指南。
本书是否适合您
阅读此书,要求读者具备Core Java、JDBC、Servlet、JSP编程的基础知识。如果你还没有掌握这些技术,请参考相关教材。作者也正在编著系列丛书:《项目实践精解:Java Web应用开发》和《项目实践精解:Java核心技术应用开发》。敬请关注!
本书结构清晰、注重实用、深入浅出,非常适合作为Struts-Spring-Hibernate的培训教材和自学教材。同时,也适合
无封面