Java EE 企业级架构开发技术与案例教程
作者 : 杨树林 胡洁萍 编著
出版日期 : 2010-12-14
ISBN : 978-7-111-32468-3
定价 : 35.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 298
开本 : 16
原书名 :
原出版社:
属性分类: 教材
包含CD :
绝版 :
图书简介

Java EE是目前最为流行的主流技术之一。它是J2EE开发进一步简化的升级版本,它使得Java企业级应用开发变得简单和快捷,其强大的API降低了应用复杂性,提高了应用的性能,扩展了应用的空间。本书将带领读者进入Java EE技术世界,由浅入深地学习各项知识。全书共8章,主要内容包括Java EE概述、Java Web应用开发基础、MVC框架技术Struts2、持久化技术JPA、轻量级框架Spring、EJB架构、JavaServer Faces技术、基于EJB架构的论坛系统设计等。每部分内容与案例相结合,有助于学生理解知识、应用知识,达到学以致用的目的。

图书特色

Java EE企业级架构开发技术与案例教程
杨树林 胡洁萍 编著

Java EE是目前最为流行的主流技术之一。它是J2EE开发进一步简化的升级版本,使得Java企业级应用开发变得简单和快捷,其强大的API降低了应用复杂性,提高了应用的性能,扩展了应用的空间。本书参考工程应用型高等院校“Java EE”课程的教学要求和IT行业对人才的需求编写而成,旨在使学生掌握前沿应用技术,理解和掌握新的软件开发思想,培养学生面向实际的综合应用开发能力。

本书特点
精心设计知识结构,讲解精练,重点突出,便于教学和学习。
跟踪主流技术,知识新颖实用,重视应用能力的培养。
案例系统、典型,将知识内容和案例有机结合,便于指导学生实践。
较好地处理具体案例与思想方法、局部知识应用与综合应用的关系。

为方便教学,本书为教师配有电子教案,有需要者请登录华章网站(www.hzbook.com)下载。

图书前言

Java EE技术经过多年的发展日趋成熟,已经成为最佳的企业应用解决方案之一。Java EE是Java的高级应用部分,它与市场紧密衔接,容易使学生掌握前沿应用技术,理解和掌握新的软件开发思想,有利于培养学生面向实际的综合应用开发能力。为了适应形势的发展,许多高校开始开设Java EE课程。但目前市场上有关Java EE的书多为技术参考书,内容偏多、偏难,不能满足学生学习的需要。经过一段时间的思考和研究,并基于多年的教学及Java开发经验,我们编写了本教材。
  鉴于Java EE的内容较多,教材的编写有一定难度,在编写过程中,我们主要注意了以下几点:
  (1) 贯彻项目驱动、设计主导、案例教学的思想。作为实践性很强的课程,其主要目的是培养学生的实战能力,因此本教材注重贯彻项目驱动、设计主导、案例教学的思想。前七章以网络书城项目为线索,根据项目需要逐步引入框架,其中第1章就讲解了分层架构,并给出了网络书城项目的设计,后续章节主要围绕书城案例讲解知识,并将案例分解到知识当中,使案例与知识有机结合。最后,第8章给出基于新技术的软件论坛系统完整的设计与实现,使设计清晰化,并达到较高的水平。
  (2) 基于需要选择内容,突出实用,讲解精练。本教材在保证知识系统性的同时,注重精选内容。从典型的项目出发,基于项目需要展开知识,围绕知识讲解案例,对知识的讲解不求全而细,而是强调实用,突出重点。在案例选择上不追求复杂化,而是力求典型性。案例之间相互联系,案例与知识相辅相成,形成有机的整体,使知识讲解直接化,既有利于学生学习知识,又有利于指导学生实践。
  (3) 跟踪Java新发展,注意适应市场需求,及时引进新内容。本教材选择目前最新版的NetBeans 6.9.1开发平台和GlassFish 3.0.1服务器,不仅易学易用,而且便于跟踪新技术。在各部分知识的讲解中,力求适应新发展,例如Struts2选择了最新版的Struts 2.8.1,持久化技术重点介绍JPA, JSF部分选择JSF2等。通过本教材不仅可以学习Struts+Spring+Hibernate JPA架构,还可以学习EJB+Hibernate JPA+JSF架构。
  本书共8章,每一章的主要内容与课堂教学的建议学时安排为:
  第1章主要内容包括Java EE简介,搭建Java EE开发环境,Java EE应用中的分层架构。通过本章,主要学习如何搭建开发环境,如何构建企业级应用程序,建议使用4学时。
  第2章主要内容包括JDBC技术,Servlet技术,过滤器和监听器,JSP、标签和表达式语言。通过本章,主要学习Java Web应用开发的基本技术,力求精练,不要求过细,建议使用10学时。
  第3章主要内容包括Struts2概述,Action与结果类型,输入验证,Struts2国际化、标签库和OGNL表达式,拦截器、文件上传和下载。通过本章,主要学习控制层实现技术,建议使用12学时。
  第4章主要内容包括JPA概述,实体对象映射,实体关系映射,实体操作与事务管理。通过本章,主要学习持久化层实现技术,建议使用12学时。
  第5章主要内容包括Spring基础,Spring的AOP,Spring集成其他框架,Spring事务管理与任务调度。通过本章,主要学习轻量级架构技术,涉及系统整合、事务处理、任务调度等,建议使用10学时。
  第6章主要内容包括EJB概述,无状态会话Bean,有状态会话Bean,单例Bean、计时器Bean和消息驱动Bean,EJB中的拦截器和安全域。通过本章,主要学习重量级架构技术,建议使用10学时。
  第7章主要内容包括JSF概述,JSF表达式语言与标签,JSF数据传递方法,数据类型转换与验证,消息处理与国际化支持,JSF生命周期与事件处理。通过本章,主要学习与EJB结合较多的新的标准Java架构技术,建议使用8学时。
  第8章主要内容包括系统分析与设计,数据访问层实现,业务逻辑层实现,系统配置,控制层实现,视图层设计。通过本章,主要通过论坛系统学习基于EJB架构的应用设计,建议使用6学时。
  如果课程学时为48,建议选择前五章进行教学;如果课程学时为72,建议选择全书八章进行教学。
  由于时间仓促、作者水平有限、书中难免存在疏漏和不足,恳请读者批评指正,使本书得以改进和完善。

编 者
2010年10月于北京

上架指导

计算机\程序设计

封底文字

Java EE是目前最为流行的主流技术之一。它是J2EE开发进一步简化的升级版本,它使得Java企业级应用开发变得简单和快捷,其强大的API降低了应用复杂性,提高了应用的性能,扩展了应用的空间。本书参考工程应用型高等院校“Java EE”课程的教学要求和IT行业对人才的需求编写而成,旨在使学生掌握前沿应用技术,理解和掌握新的软件开发思想,培养学生面向实际的综合应用开发能力。
本书特点:
 ·精心设计知识结构,讲解精炼,重点突出,便于教学和学习。
 ·跟踪主流技术,知识新颖实用,重视应用能力的培养。
 ·案例系统、典型,将知识内容和案例有机结合,便于指导学生实践。
 ·较好地处理具体案例与思想方法、局部知识应用与综合应用的关系。

图书序言

我国高等学校计算机专业建立于20世纪50年代。经过近60年的迅速发展,经历了从精英化教育到大众化教育的发展阶段,目前在校生多达40余万人,已成为我国规模最大的理工科专业,为国家建设培养了大批信息技术人才。2006年,教育部计算机科学与技术专业教学指导委员会发布了《高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)》(以下简称《规范》),提出了以"按培养规格分类"为核心思想的专业发展建议,把计算机专业人才划分为研究型、工程型、应用型三种不同类型。在《规范》的方针指导下,培养合格的计算机本科人才。
  教育包括知识、能力、素质三个方面。知识是基础、载体和表现形式,能力是技能化的知识及其综合体现,素质是知识和能力的升华。专业教育不仅要重视知识的传授,更应突出专业能力的培养,实施能力导向的教育。如何以知识为载体实现能力的培养和素质的提高,特别是实现专业能力和素质的提高是非常重要的。对计算机专业本科教育而言,要想实现能力导向的教育,首先要分析专业能力的构成并考虑如何将其培养落实到教学实践中。为此,教育部高等学校计算机科学与技术专业教学指导委会开展了计算机科学与技术专业人才专业能力(简称为计算机专业能力)的培养研究。该项研究明确计算机专业本科人才应具有的四大基本能力——计算思维能力、算法设计与分析能力、程序设计与实现能力、系统能力,并将这四大基本能力分解为82个能力点,探讨如何面对不同类型学生的教育需求,在教学活动中进行落实。
  针对计算机应用型人才的培养,由于其培养数量巨大、社会需求广泛和多样化,所以培养应用型人才的专业能力在具体教学实践上有其自身的特点。计算机应用型人才的培养目标是为国家、企事业信息系统的建设与运行培养信息化技术型人才。本类型人才应能承担信息化建设的核心任务,掌握各种计算机软、硬件系统的性能,善于进行系统的集成和配置,有能力管理和维护复杂信息系统的运行,研究如何实现服务及方便有效地利用系统进行计算等。计算机应用型人才的培养凸显了职业特征,使企业与学校的合作更加紧密,部分课程设置凸显能力培养特征,教学模式也呈现了职业化趋势。
  为体现研究成果在教学活动中的实现,我们根据《高等学校计算机科学与技术专业人才专业能力构成与培养》和计算机应用型人才培养的特点和社会需求出版了这套教材。本套教材面向高等院校计算机应用型人才培养从知识传授向能力培养转型的需求,在内容的选择、体系安排和教学方法按照专业能力培养和职业特征的需要进行了探索和诠释。
  本套教材在体系结构上,遵从公共基础课程平台、专业核心课程平台、专业选修课程平台、方向课程平台和基本素质课程平台的体系。专业核心课程主要有程序设计基础、离散数学、数据结构、计算机组成原理、操作系统原理、计算机网络原理、数据库系统原理、编译原理等课程。方向课程分为计算机网络、软件工程、信息系统、程序设计、电子商务、嵌入式系统、多媒体技术和计算机硬件等方向。在教材编写上,汇集作者才智,重点突出对计算机应用能力和应用技术的培养。
  本套丛书的出版是在配合计算机应用型人才专业能力的培养和落实方面的初步尝试,在教材组织和编写上还会有许多不足和缺陷,需要进一步完善,我们衷心希望本套教材的出版能起到抛砖引玉的作用,也希望广大教育工作者加入到计算机应用型人才能力培养的研究和实践中来,并对相关的教材建设提出自己的宝贵意见。

图书目录

出版者的话
丛书序言
丛书编委会
前言
第1章 Java EE概述 1
1.1 Java EE简介 1
1.1.1 Java EE框架的产生 1
1.1.2 什么是Java EE 2
1.1.3 Java EE 规范新概念 3
1.1.4 Java EE 常用技术 4
1.2 搭建Java EE开发环境 5
1.2.1 安装JSEDK 5
1.2.2 安装Java EE开发工具 6
1.2.3 安装MySQL 8
1.2.4 安装GlassFish 13
1.3 Java EE应用中的分层架构 15
1.3.1 分层架构模式 16
1.3.2 Java EE中的三层结构 17
1.3.3 结合MVC模式的分层结构 17
1.3.4 案例1-1 网络书城系统分析与设计 17
本章小结 27
习题 27
第2章 Java Web应用开发基础 28
2.1 JDBC技术 28
2.1.1 JDBC简介 28
2.1.2 JDBC访问数据库的基本步骤 29
2.1.3 案例2-1 网络书城系统数据访问层的实现 29
2.1.4 JDBC数据源与连接池 33
2.2 Servlet技术 36
2.2.1 什么是Servlet 36
2.2.2 如何建立Servlet 36
2.2.3 案例2-2 建立超级管理员登录Servlet 37
2.2.4 Servlet的配置 40
2.2.5 转发和重定向 40
2.2.6 处理请求和响应 41
2.2.7 案例2-3 使用Servlet实现验证码 43
2.3 过滤器和监听器 45
2.3.1 过滤器Filter 45
2.3.2 案例2-4 设计一个编码过滤器 45
2.3.3 监听器Listener 47
2.3.4 Servlet上下文与会话 48
2.3.5 案例2-5 统计访问人数和在线人数 49
2.4 JSP、标签和表达式语言 51
2.4.1 JSP概述 51
2.4.2 JSP隐含对象 52
2.4.3 自定义标签的设计与使用 53
2.4.4 案例2-6 设计图书分类标签 53
2.4.5 表达式语言EL和标准标签库JSTL 56
2.4.6 案例2-7 实现图书分类的管理 60
本章小结 64
习题 64
第3章 MVC框架技术Struts2 65
3.1 Struts2概述 65
3.1.1 Struts框架的历史 65
3.1.2 Struts2 下载与配置 66
3.1.3 案例3-1 使用Struts2实现客户登录 67
3.1.4 Struts2的MVC原理 70
3.1.5 Struts2组件 71
3.1.6 Struts2的中文乱码问题 73
3.2 Action与结果类型 73
3.2.1 Action的实现类 73
3.2.2 在Action中访问Web对象 76
3.2.3 多方法的Action 76
3.2.4 result类型 77
3.3 输入验证 79
3.3.1 使用validate()方法 79
3.3.2 使用验证文件验证 80
3.3.3 案例3-2 实现客户登录和注册验证(使用配置文件验证) 82
3.4 Struts2国际化、标签库和OGNL表达式 86
3.4.1 Struts2国际化 86
3.4.2 常用Struts2标签 87
3.4.3 Struts2的OGNL 90
3.5 拦截器、文件上传和下载 91
3.5.1 拦截器 91
3.5.2 文件上传和下载 93
3.5.3 案例3-3 实现图书的添加 95
本章小结 99
习题 100
第4章 持久化技术JPA 101
4.1 JPA概述 101
4.1.1 JPA及其优势 101
4.1.2 Hibernate JPA 102
4.1.3 实体与实体管理器 103
4.1.4 持久性单元 106
4.1.5 案例4-1 在书城项目中配置Hibernate JPA 107
4.2 实体对象映射 108
4.2.1 实体映射基础 108
4.2.2 主键映射 110
4.2.3 映射特殊类型 111
4.2.4 案例4-2 书城项目中客户实体类的设计 112
4.3 实体关系映射 115
4.3.1 实体关系概述 115
4.3.2 一对一映射 115
4.3.3 一对多映射 118
4.3.4 多对一映射 119
4.3.5 案例4-3 书城项目的其他实体类设计 121
4.4 实体操作与事务管理 123
4.4.1 JPA实体操作 123
4.4.2 JPA查询 125
4.4.3 JPA事务管理 128
4.4.4 辅助类设计 129
4.4.5 案例4-4 基于JPA的书城Dao设计 130
本章小结 133
习题 133
第5章 轻量级框架Spring 135
5.1 Spring基础 135
5.1.1 Spring框架 135
5.1.2 Spring控制反转IoC 136
5.1.3 Bean的配置与BeanFactory 139
5.1.4 案例5-1 在书城项目中使用Spring 140
5.2 Spring的AOP 144
5.2.1 AOP的概念 144
5.2.2 使用Spring中的AOP 146
5.2.3 基于XML Schema和Annotation的Spring AOP配置 150
5.2.4 案例5-2 书城项目中的日志实现 151
5.3 Spring集成其他框架 152
5.3.1 Spring与Struts2集成 152
5.3.2 Spring与JPA集成 152
5.3.3 SSHJ架构 156
5.3.4 案例5-3 基于SSHJ架构的书城项目配置 156
5.4 Spring事务管理与任务调度 157
5.4.1 事务的基本配置 157
5.4.2 事务的传播属性 158
5.4.3 使用aop及tx标签配置事务 160
5.4.4 使用标注配置事务 160
5.4.5 任务调度 161
5.4.6 案例5-4 书城项目中事务和任务调度的配置 162
本章小结 164
习题 165
第6章 EJB架构 166
6.1 EJB概述 166
6.1.1 什么是EJB 166
6.1.2 EJB组件类型 167
6.1.3 EJB中的依赖注入 168
6.1.4 案例6-1 使用NetBeans
创建企业级书城项目 169
6.2 无状态会话Bean 171
6.2.1 创建无状态会话Bean 171
6.2.2 访问无状态会话Bean 172
6.2.3 案例6-2 创建书城的无状态会话Bean 173
6.3 有状态会话Bean 176
6.3.1 创建有状态会话Bean 176
6.3.2 会话Bean的生命周期 176
6.3.3 案例6-3 书城的购物车会话Bean 178
6.4 单例会话Bean、计时器Bean 和消息驱动Bean 180
6.4.1 单例会话Bean 180
6.4.2 计时器Bean 182
6.4.3 JMS与消息驱动Bean 183
6.4.4 案例6-4 书城项目中的订单消息驱动Bean 187
6.5 EJB中的拦截器和安全域 190
6.5.1 EJB中的拦截器 190
6.5.2 验证、授权与登录验证 193
6.5.3 案例6-5 基于安全域实现书城项目的管理员登录验证 194
本章小结 198
习题 198
第7章 JavaServer Faces技术 199
7.1 JSF概述 199
7.1.1 什么是JSF 199
7.1.2 JSF的优势 200
7.1.3 JSF应用的组成 200
7.1.4 模板页面与适配页面 205
7.1.5 案例7-1 在书城项目中使用JSF 207
7.2 JSF表达式语言与标签 211
7.2.1 JSF表达式语言 211
7.2.2 JSF的HTML标签 212
7.2.3 JSF核心标签 216
7.2.4 案例7-2 书城客户注册功能实现 217
7.3 JSF数据传递方法 218
7.3.1 从JSF页面传递参数给受管Bean 218
7.3.2 在请求之间传递对象 219
7.3.3 在受管Bean之间通信 220
7.4 数据类型转换与验证 220
7.4.1 标准转换器 220
7.4.2 自定义转换器 221
7.4.3 标准验证器 223
7.4.4 自定义验证器 224
7.4.5 案例7-3 为客户注册页增加验证功能 225
7.5 消息处理与国际化支持 227
7.5.1 消息处理 227
7.5.2 国际化支持 228
7.6 JSF生命周期与事件处理 231
7.6.1 JSF生命周期 231
7.6.2 Phase事件与JSF监听器 232
7.6.3 动作事件 233
7.6.4 即时事件 233
7.6.5 值变事件 234
本章小结 235
习题 236
第8章 基于EJB架构的论坛系统设计 237
8.1 系统分析与设计 237
8.1.1 系统分析 237
8.1.2 总体设计 237
8.1.3 实体类(数据模型)设计 240
8.1.4 接口设计 244
8.2 数据访问层实现 246
8.2.1 BaseDao实现 246
8.2.2 BbsUserDao实现 248
8.2.3 BbsLoginDao实现 248
8.2.4 BbsForumDao实现 249
8.2.5 BbsThemeDao实现 249
8.2.6 BbsMessageDao实现 249
8.3 业务逻辑层实现 250
8.3.1 BbsUserService实现 250
8.3.2 BbsLoginService实现 250
8.3.3 BbsForumService实现 251
8.3.4 BbsThemeService实现 251
8.3.5 BbsMessageService实现 252
8.4 系统配置 253
8.4.1 连接池和数据源配置 253
8.4.2 持久化单元配置 253
8.4.3 引入JSF框架 253
8.4.4 安全验证配置 254
8.5 控制层实现 257
8.5.1 控制层基类 257
8.5.2 版块控制类 259
8.5.3 主题控制类 260
8.5.4 帖子控制类 263
8.5.5 用户控制类 265
8.6 视图层设计 268
8.6.1 界面的总体设计 268
8.6.2 主题视图设计 272
8.6.3 帖子视图设计 276
8.6.4 用户视图设计 280
本章小结 284
习题 284
参考文献 285

教学资源推荐
作者: [美]埃里克 S. 罗伯茨(Eric S. Roberts) 著
作者: 许畅 陈嘉 朱晓瑞 编著
作者: Jie Wu
作者: [美] 罗伯特·塞奇威克(Robert Sedgewick) 凯文·韦恩(Kevin Wayne) 罗伯特·唐德罗(Robert Dondero) 著
参考读物推荐
作者: (美)Steve Teixeira, Xavier Pacheco
作者: (美)Tim Lindholm Frank Yellin Gilad Bracha Alex Buckley 著
作者: 刘智勇