Java高级框架应用开发案例教程 Struts2+Spring+Hibernate.pdf。高等学校计算机科学与技术项目驱动案例实践规划教材ava高级框架应用开发案例教程Struts2+Spring+Hibernate王永贵郭伟马永安焦学理编著清华大学出版社北京序言作为教育部高等学校计算机科学与技术教学指导委员会的工作内容之一,自从2003年参与清华大学出版社的“21世纪大学本科计算机专业系列教材”的组织工作以来,陆续参加或见证了多个出版社的多套教材的出版,但是现在读者看到的这一套“高等学校计算机科学与技术项目驱动案例实践规划教材”有着特殊的意义。这个特殊性在于其内容。这是第一套我所涉及的以项目驱动教学为特色,实践性极强的规划教材。如何培养符合国家信息产业发展要求的计算机专业人才,一直是这些年人们十分关心的问题。加强学生的实践能力的培养,是人们达成的重要共识之一。为此,高等学校计算机科学与技术教学指导委员会专门编写了《高等学校计算机科学与技术专业实践教学体系与规范》(清华大学出版社出版)。但是,如何加强学生的实践能力培养,在现实中依然遇到种种困难。困难之一,就是合适教材的缺乏。以往的系列教材,大都比较“传统”,没有跳出固有的框框。而这一套教材,在设计上采用软件行业中卓有成效的项目驱动教学思想,突出“做中学”的理念,突出案例(而不是“练习作业”)的作用,为高校计算机专业教材的繁荣带来了一股新风这个特殊性在于其作者。本套教材目前规划了10余本,其主要编写人不是我们常见的知名大学教授,而是知名软件人才培训机构或者企业的骨干人员,以及在该机构或者企业得到过培训的并且在高校教学一线有多年教学经验的大学教师。我以为这样一种作者组合很有意义,他们既对发展中的软件行业有具体的认识,对实践中的软件技术有深刻的理解,对大型软件系统的开发有丰富的经验,也有在大学教书的经历和体会,他们能在一起合作编写教材本身就是一件了不起的事情,没有这样的作者组合是难以想象这种教材的规划编写的。我一直感到中国的大学计算机教材尽管繁荣,但也比较“单一”,作者群的同质化是这种风格单一的主要原因。对比国外英文教材,除了 Addison Wesley和 Morgan Kaufmann等出版的经典教材长盛不衰外,我们也看到 O'Reilly“动物教材”等的异军突起—这些教材的作者,大都是实战经验丰富的资深专业人士。这个特殊性还在于其产生的背景。也许是由于我自已在计算机技术方面的动手能力相对比较弱,其实也不太懂如何教学生提高动手能力,因此一直希望有一个机会实际地了解所谓“实训”到底是怎么回事,也希望能有一种安排让co@①c①⑤目录第1章 Struts+ Spring+ Hibernate概述1.1框架概述………………………………………………………112 Struts、 Spring和 Hibernate概述4121表示层……122持久层……………………………………………5123业务层…………………………………1.2.4域模块层糖.和13开发工具与配置…………………………………………71.3.1开发工具与环境…·::“:·:·“·“·132工具集成步骤…:::·:a::::±":·+:+““““““““““““·“;;4;;.:4本章小结………………………………10第2章 AscentWeb医药商务项目概述翻L,1看库21项目需求分析…………………………………………………………1122项目系统分析和设计…………17221面向对象分析设计···“···““·“·“2.22数据库设计…………………………………………24本章小结…………27第3章 Struts基础……………283.1MvC模式概述······::::·:·*:::···…*·*“…··---4“+“4“;;;.2832MVC与 Struts映射………………3033 Struts2的工作流程和配置文件……………………………31331 Struts2的工作流程……332Stus2的配置文件………………………………3234创建 Controller组件…4834.1 Filter Dispatcher……………………48342 Action的开发……49343属性驱动和模型驱动35创建Mode组件…5236创建Ⅵew组件……·…5337 Struts2开发步骤5438项目案例……………"……………………62381学习目标……62382案例描述62383案例要点62384案例实施,····1世世aaa……:62385特别提示………………………………………73386拓展与提高本章小结““+··.::::::.:::··““·::..““+…………"…":…73习题a4“B·"!“““……………………………74第4章 Struts2标签………………::….……:7541一般标签““““·:::::::·…·.:..:.:...“+42U标签4·.“;·“….··.44“··::::·“:.·““···::;8743 Struts2中的表达式语言…·自9944项目案例……1084.4.1学习目标目和中,。.·道1084.42案例描述108443案例要点……108444案例实施……………………"………………10844.5特别提示…1134.4.6拓展与提高……""…………………………………113本章小结114习题………………………114第5章 Struts高级技术………11551国际化支持·"“““:··:1155.2, Struts,2的异常机制……+,“…1335.3转换器..:.甲。··:·.::·+.:t:虚13354数据验证……·日·「·吾理:1a1日4审“aa“;a…136541使用 Action的 validate方法137542使用 Struts2的校验框架...."::.·.·:·:···““““=““·+…14055项目案例和.····,栅十面aa甲.“ Unde aI14555.1学习目标1455.52案例描述……145553案例要点145554案例实施…由果.…145o@①@①③555特别提示………147556拓展与提高…………………………………………148本章小结…148习题………149第6章 Struts拦截器和文件上传1506.1拦截器………………………………………………15061.1拦截器概述……………………………1506.1.2已有的拦截器…………………………………15161.3自定义拦截器………………………………………1576.2文件上传……………………………………………………16063项目案例………………………………………………167631学习目标………………………………………………………167632案例描述………………………………………………167633案例要点………………………………………167634案例实施…………………………………167635特别提示……………………………………………………181636拓展与提高……………………………………………18本章小结…182习题182第T章 Hibernate基础……………,·,曲,·和,,和日;要rngnnniit8+ t4+18371 Hibernate概述e-+?·,·····中中·“++干日日;和72 Hibernate单表的对象系数据库映射……,………………18572.1持久化层……………………………………………185722DAO……………………………………………………………20273 Hibernate开发步骤…20574项目案例…216741学习目标……………………216742案例描述……………………………………………………………21674.3案例要点…………………………………………216744案例实施216745特别提示…,…………………220746拓展与提高本章小结………………………………………………………221习题…………………………………………………………………221Ⅸ第8章 Hibernate实体关系映射…………………………………2228.1多对一、一对多关系…22282一对一关系…………………………23383多对多关系丰日丰,+4+鲁+24084项目案例……………………………………………………………………247841学习目标=“+#“;··--:::":":.:.::..·:···…247842案例描述247843案例要点·,,·:·:···:·::.:.:247844案例实施……………………47845特别提示……………………254846拓展与提高…254本章小结……254习题“十“世世道量首,…255第9章 Hibernate查询语言2569.1HQL……………………………………………………………………2592条件查询…………………26493原生SQL查询6794项目案例福和和44和…………………268941学习目标晋·.,中·曹世虚268942案例描述………………………268943案例要点……269944.案例实施………269945特别提示…………………"1"‘“““““““·∷·…∷“………275946拓展与提高……………,‘275本章小结;.中………………275习题276第10章 Spring技术和IoC……………………….27710.1 Spring2.0的新特性和非·,…27910.1.1简介27910.12控制反转(oC容器…………………………1·_,·世曾世想27910.13面向切面编程……27910.14中间层…………………………………………………………28010.1.5Web层…………………………………280X10.16其他特性…………………………………………………28110.1.7移植到 Spring228110.1.8更新的实例应用………………28210.1.9改进的文档+·+““282102 Spring控制反转loC………,和·,甲,·「··中282102.1loC原理……………………………………………………………2831022 Bean Factory……2851023 ApplicationContext………………289103项目案例福;a;an丰日·日,主s.,·,用.,,中、,看,和.,2931031学习目标…………………………1032案例描述1033案例要点……………2931034案例实施………………………………………………………29310.35特别提示………29710.3.6拓展与提高………………………………297本章小结298习题………………………298第11章 Spring面向方面编程和事务处理……加面 ne t量tt29911.1AOP概念112 Spring的切入点…………303113 Spring的通知类型…1306114 Spring中的 advisor……115用 Proxy Factory Bean创建AOP代理312116事务处理……3151161声明式事务处理…………………………………3151162编程式事务处理318117项目案例…………………………………………………………………32011.7.1学习目标……………………………!……………………3201172案例描述…………………………………………………………3201.73案例要点……………………………………32011.7.4案例实施………………………………………3201175特别提示…………32511,7.6拓展与提高325本章小结325习题…………325o@①s第12章 Struts+ Spring+ Hibernate集成…,………32612,1环境搭建和基本配置……………………………………326122 Spring和 Hibernate集成…339123 Spring和 Struts集成4垂垂…………………………347124项目案例…………350124.1学习目标1242案例描述1243案例要点………3501244案例实施……………………………350124.5特别提示+““““““““““““““““““…376124.6拓展与提高………………………………………………………376本章小结·中·甲·.·甲··如····“·+福‘由当画,和↓,备……377习题·“+“#4+““,■1車.,果..集日日丰,……377致谢a:‘:a:+““+“日:甲!早书,.4当“!早甲………378