Java Web 2.0架构开发与项目实战

Java Web 2.0架构开发与项目实战

张峰, 编著

出版社:清华大学出版社

年代:2009

定价:88.0

书籍简介:

Java作为IT从业人员的必备工具之一,有许多较深入的课题值得探讨。本书在读者熟悉Java语言基本知识的基础上,介绍了一些Java语言的高级特性以及Java EE的基础知识。

作者介绍:

张峰,西安电子科技大学硕士,系统构架师、系统分析师。 具有10年Java EE项目实施及开发经验。擅长软件系统构架,对基于Java EE的软件系统开发方法有深入研究和体验,并应用基于SSH、Seam开发技术构建了多个Java EE大型项目(如Java网络通信、手机增值服务、数字化文档出版系统、Java嵌入式开发)。 在使用Java EE、XML、UML、Struts、CORBAI Hibernate、Spring、 Seam、EJB3、Ajax技术开发企业级应用程序方面都具有丰富的经验。 主要科研项目 某型号飞机备件管理信息系统 航空部附件维修管理信息系统 飞机技术出版物数字化出版系统 某型号飞机可靠性监控系统 无线PDA酒店系统 全方位OA系统 呼叫中心系统 航材电子商务交易系统 飞机维修管理信息系统

书籍目录:

第1部分 基础应用篇

第01章 J2EE技术框架2

视频教学:1小时

1.1 J2EE的架构简介2

1.1.1 J2EEWeb容器3

1.1.2 J2EEEJB容器3

1.1.3 J2EEApplet容器3

1.1.4 J2EEApplicationClient容器3

1.2 J2EE的多层模型3

1.2.1 客户层4

1.2.2 Web层4

1.2.3 业务层4

1.2.4 持久层4

1.3 J2EE开发环境的配置5

1.3.1 安装JDK6

1.3.2 安装Tomcat7

1.4 J2EE的相关部署规范11

1.4.1 容器的配置11

1.4.2 web.xml的配置12

1.5 集成开发工具的安装和使用14

1.5.1 Eclipse的下载和安装14

1.5.2 MyEclipse的下载和安装14

1.5.3 SVN插件的安装15

1.6 MyEclipse的配置与应用15

1.6.1 配置Web服务器15

1.6.2 建立Web应用16

1.6.3 部署Web项目17

1.7 本章小结17

第02章 JavaWeb开发过程中实用工具的使用18

视频教学:1小时45分钟

2.1 Subversion的应用18

2.1.1 Subversion概述18

2.1.2 Subversion的功能19

2.1.3 Subversion的安装与配置19

2.1.4 导入项目23

2.1.5 导出项目23

2.1.6 Subversion客户端软件的下载安装23

2.1.7 在MyEclipse中使用SVN24

2.2 Confluence的应用25

2.2.1 Confluence的下载和安装25

2.2.2 Confluence的配置26

2.3 JIRA的应用28

2.3.1 JIRA的下载与安装28

2.3.2 JIRA的配置29

2.4 iReport的应用30

2.4.1 iReport的下载和安装31

2.4.2 使用iReport设计报表32

2.4.3 新建一个空报表32

2.4.4 解决PDF的中文问题33

2.4.5 使用数据库中的数据生成报表33

2.4.6 增加.修改与删除报表字段36

2.4.7 字段在报表设计器中的使用36

2.4.8 解决报表统一样式及中文字体问题37

2.4.9 在iReport中定义与使用参数37

2.4.1 0定义与使用变量38

2.5 JasperReports的应用39

2.5.1 以PDF格式输出39

2.5.2 以HTML格式输出40

2.6 本章小结41

第03章 Java与XML编程42

视频教学:38分钟

3.1 XML简介42

3.2 XML基本语法规则44

3.2.1 XML声明44

3.2.2 XML命名规则44

3.2.3 XML文档44

3.2.4 文档类型声明46

3.2.5 元素声明46

3.2.6 属性声明49

3.2.7 实体51

3.2.8 XML名称空间52

3.2.9 XML相关技术名词解释53

3.3 解析XML54

3.4 利用Java语言解析XML55

3.4.1 文档对象模型55

3.4.2 DOM接口55

3.4.3 常用的DOM方法55

3.4.4 第一个DOM应用56

3.4.5 XML的简单API(SAX)61

3.4.6 第一个SAX应用61

3.4.7 解析器的高级功能66

3.4.8 解析字符串68

3.5 本章小结69

第2部分 Ajax/Web2.0应用篇

第04章 JavaScript高级应用71

视频教学:55分钟

4.1 JavaScript面向对象71

4.1.1 JavaScript类的定义71

4.1.2 prototype对象73

4.1.3 JavaScript反射机制73

4.1.4 反射机制在Ajax中的应用74

4.2 JavaScript类继承75

4.2.1 利用共享prototype实现继承75

4.2.2 利用反射机制和prototype实现继承76

4.3 JavaScript框架编程77

4.3.1 框架的引用77

4.3.2 引用其他框架内的变量和函数79

4.4 JavaScript定时器80

4.5 JavaScript异常处理82

4.5.1 利用try-catch-finally处理异常82

4.5.2 利用throw处理异常83

4.6 本章小结83

第05章 Ajax与Web2.0应用架构84

视频教学:1小时15分钟

5.1 Ajax应用技术84

5.1.1 Ajax应用简介84

5.1.2 Ajax的工作原理85

5.2 Ajax开发步骤85

5.2.1 XMLHttpRequest对象85

5.2.2 应用JavaScript代码86

5.2.3 获取Request对象87

5.2.4 Ajax的基本请求/响应模型88

5.2.5 处理响应89

5.2.6 调用Ajax过程90

5.3 Web2.0和Ajax技术90

5.3.1 Web2.0和Ajax技术简介90

5.3.2 Web2.0的DOCTYPE声明91

5.3.3 Web2.0的名字空间和语言编码的声明91

5.3.4 Web2.0对样式表的调用92

5.3.5 Web2.0XHTML代码规范92

5.3.6 设计CSS93

5.4 在请求和响应中使用XML95

5.4.1 以XML格式从网页向服务器发送请求96

5.4.2 以XML格式在网页中从服务器接收请求97

5.5 实例解析Ajax应用99

5.5.1 定义响应Ajax的Servlet99

5.5.2 定义Web页面100

5.5.3 配置运行程序101

5.6 本章小结103

第06章 A4J框架104

视频教学:1小时

6.1 A4J的下载与配置105

6.1.1 A4J简介105

6.1.2 A4J的下载与配置105

6.2 A4J应用程序的创建105

6.2.1 创建A4JWeb应用105

6.2.2 创建JSF页面程序106

6.2.3 创建后台受管理Bean107

6.2.4 配置JSF应用107

6.2.5 部署并运行程序108

6.3 A4J工作原理109

6.3.1 A4J框架中的基本元素109

6.3.2 A4J框架的工作流程109

6.4 A4J框架组件库110

6.4.1 a4j:ajaxListener组件110

6.4.2 a4j:region组件110

6.4.3 a4j:page组件111

6.4.4 a4j:support组件112

6.4.5 a4j:commandLink组件113

6.4.6 a4j:commandButton组件114

6.4.7 a4j:form组件116

6.4.8 a4j:htmlCommandLink组件117

6.4.9 a4j:outputPanel组件117

6.4.10 a4j:actionparam组件118

6.4.11 a4j:status组件119

6.4.12 a4j:loadBundle组件120

6.4.13 a4j:mediaOutput组件120

6.4.14 a4j:keepAlive组件122

6.4.15 a4j:jsFunction组件122

6.4.16 a4j:include组件124

6.4.17 a4j:loadScript组件125

6.4.18 a4j:loadStyle组件125

6.4.19 a4j:log组件125

6.4.20 a4j:poll组件126

6.4.21 a4j:portlet组件126

6.4.22 a4j:push组件127

6.4.23 a4j:repeat组件129

6.4.24 a4j:queue组件129

6.5 本章小结130

第07章 DWR框架131

视频教学:1小时25分钟

7.1 DWR的下载和配置132

7.1.1 DWR简介132

7.1.2 下载和配置DWR132

7.2 DWR的应用过程133

7.2.1 编辑配置web.xml文件133

7.2.2 编辑配置dwr.xml文件133

7.2.3 编辑Java类133

7.2.4 测试DWR134

7.2.5 编写JSP134

7.3 DWR工作环境的配置135

7.3.1 配置web.xml135

7.3.2 配置dwr.xml135

7.4 DWR与Servlet整合138

7.5 DWR与Spring整合138

7.6 DWR与Struts整合139

7.7 DWR与Struts2整合139

7.8 反向Ajax140

7.8.1 轮询141

7.8.2 Comet141

7.8.3 PiggyBack141

7.9 DWR中的JavaScript详解144

7.9.1 简单的回调函数145

7.9.2 调用元数据对象145

7.9.3 查找回调函数145

7.9.4 创建一个与Java对象匹配的JavaScript对象146

7.10 engine.js引擎的属性146

7.11 engine.js属性的调用148

7.11.1 批量调用148

7.11.2 顺序调用148

7.11.3 错误警告和超时148

7.11.4 远程Hooks149

7.11.5 远程调用选项149

7.12 util.js工具包150

7.12.1 $()函数150

7.12.2 addOptions与removeAllOptions函数150

7.12.3 addRows与removeAllRows函数151

7.12.4 getText函数152

7.12.5 getValue函数152

7.12.6 getValues函数153

7.12.7 onReturn函数153

7.12.8 selectRange函数153

7.12.9 setValue函数153

7.12.10 setValues函数154

7.12.11 toDescriptiveString函数154

7.12.12 useLoadingMessage函数155

7.13 本章小结155

第08章 Dojo框架156

视频教学:3小时30分钟

8.1 Dojo框架的应用156

8.1.1 Dojo简介156

8.1.2 常用包介绍157

8.1.3 下载和配置Dojo158

8.1.4 动态加载package159

8.1.5 定制整合包159

8.1.6 djConfig159

8.1.7 Dojo应用示例160

8.2 Dojo与XHR框架161

8.2.1 XHR框架介绍161

8.2.2 应用xhrGet请求资源162

8.2.3 应用xhrGet提交表单163

8.2.4 XHR框架中的其他方法的应用164

8.3 Dojo的事件机制165

8.3.1 DOM事件模型165

8.3.2 使用Dojo处理DOM事件166

8.3.3 使用Dojo处理用户自定义事件167

8.3.4 Dojo的订阅/发布模式168

8.4 Dojo中的拖曳170

8.4.1 Dojo的拖动170

8.4.2 动态实现可拖动实体170

8.4.3 拖动柄171

8.4.4 限制可拖动实体拖动的范围171

8.4.5 捕获拖动中的事件173

8.4.6 Dojo的拖放174

8.4.7 动态生成源容器.目标容器和可拖放实体175

8.4.8 拖放柄176

8.4.9 捕获拖放中的事件176

8.5 Dojo基础Web2.0UI组件库177

8.5.1 表单Widget简介178

8.5.2 开发UI组件步骤179

8.5.3 表单Widget使用示例179

8.5.4 ComboBoxWidget的使用182

8.5.5 SliderWidget的使用183

8.5.6 DateTextbox与TimeTextBox的使用185

8.5.7 CurrencyTextBox与NumberTextBox的使用186

8.5.8 FilteringSelect的使用187

8.5.9 MultiSelect的使用188

8.5.1 0NumberSpinner的使用189

8.5.1 1布局Widget简介190

8.5.1 2TabContainerWidget192

8.5.1 3ContentPanewidget193

8.5.1 4AccordionContainerwidget194

8.5.1 5布局Widget的综合使用示例195

8.6 Dojo高级Web2.0UI组件库196

8.6.1 高级UI组件库简介196

8.6.2 Tooltip组件197

8.6.3 Dialog组件198

8.6.4 TooltipDialog组件200

8.6.5 Menu组件201

8.6.6 TitlePane组件201

8.6.7 Editor组件202

8.6.8 InlineEditBox组件204

8.6.9 ProgressBar组件204

8.6.1 0Tree组件205

8.7 Dojo的基础对象和方法208

8.8 Dojo的dojo.string对象209

8.9 本章小结210

第3部分 SSH架构篇

第09章 Struts2.1 框架212

视频教学:7小时10分钟

9.1 Struts2概述213

9.1.1 Struts2简介213

9.1.2 Struts2框架架构213

9.1.3 Struts2的配置文件214

9.1.4 Struts2与Struts1的比较218

9.2 Struts2开发环境搭建220

9.2.1 下载和安装Struts2220

9.2.2 创建Struts2应用项目221

9.2.3 设计动作控制类222

9.2.4 配置Action类223

9.2.5 设计视图223

9.2.6 执行Web应用程序225

9.2.7 保存会话信息225

9.3 深入解析Struts2配置226

9.3.1 package配置226

9.3.2 命名空间配置227

9.3.3 包含配置227

9.3.4 常量配置228

9.4 深入解析Struts2Action228

9.4.1 实现ActionSupport类228

9.4.2 在Action中访问ServletAPI229

9.4.3 处理Action中包含的多个请求230

9.4.4 处理Action返回结果233

9.4.5 属性驱动和模型驱动235

9.4.6 Struts2的异常处理机制237

9.5 通用标签238

9.5.1 if.elseif和else标签238

9.5.2 迭代iterator标签239

9.5.3 I18n标签240

9.5.4 include标签240

9.5.5 param标签241

9.5.6 set标签241

9.5.7 text标签242

9.5.8 url标签242

9.5.9 property标签243

9.5.10 bean标签243

9.5.11 append标签244

9.5.12 generator标签244

9.5.13 push标签245

9.5.14 merge标签245

9.5.15 sort标签246

9.5.16 subset标签246

9.5.17 date标签248

9.5.18 debug标签248

9.5.19 a标签248

9.6 UI标签248

9.6.1 form标签250

9.6.2 reset标签250

9.6.3 textarea标签251

9.6.4 checkbox标签251

9.6.5 radio标签251

9.6.6 hidden标签252

9.6.7 password标签252

9.6.8 select标签252

9.6.9 optgroup标签252

9.6.10 submit标签253

9.6.11 textfield标签253

9.6.12 token标签253

9.6.13 updownselect标签254

9.6.14 optiontransferselect标签254

9.6.15 doubleselect标签255

9.6.16 checkboxlist标签256

9.6.17 combobox标签256

9.6.18 head标签257

9.6.19 label标签257

9.6.20 主题和模板257

9.7 非表单标签258

9.7.1 actionerror标签258

9.7.2 actionmessage标签259

9.7.3 component标签259

9.7.4 fielderror标签260

9.8 Strtus2对Ajax的支持260

9.8.1 Struts2与Dojo260

9.8.2 Struts2与DWR261

9.8.3 a和submit标签262

9.8.4 JSON的配置264

9.8.5 autocompleter标签267

9.8.6 bind标签269

9.8.7 datetimepicker标签269

9.8.8 div标签270

9.8.9 head标签271

9.8.10 tabbedpanel标签271

9.8.11 tree和treenode标签272

9.8.12 动态树实现273

9.9 国际化276

9.9.1 Struts2国际化应用示例276

9.9.2 参数化国际化字符串278

9.10 拦截器278

9.10.1 实现原理278

9.10.2 配置和使用拦截器279

9.10.3 自定义拦截器281

9.11 转换器285

9.11.1 基本类型转换器285

9.11.2 自定义类型转换器285

9.11.3 局部类型转换器286

9.11.4 全局类型转换器286

9.11.5 局部类型转换器应用286

9.11.6 全局类型转换器的应用288

9.12 校验框架290

9.12.1 利用编程方式实现Struts2输入校验290

9.12.2 应用Struts2的校验框架292

9.12.3 Struts2输入校验信息国际化294

9.13 Struts2内置校验器294

9.13.1 必填校验器295

9.13.2 必填字符串校验器295

9.13.3 整数校验器296

9.13.4 日期校验器296

9.13.5 表达式校验器297

9.13.6 字段表达式校验器297

9.13.7 邮件校验器297

9.13.8 网址校验器298

9.13.9 visitor校验器298

9.13.10 转换校验器299

9.13.11 字符串长度校验器299

9.13.12 正则表达式校验器299

9.13.13 非字段校验器300

9.13.14 字段校验器300

9.13.15 短路校验器301

9.14 文件上传和下载302

9.14.1 文件上传302

9.14.2 多文件上传305

9.14.3 文件下载306

9.15 OGNL307

9.15.1 OGNL的应用307

9.15.2 OGNL与集合Collections308

9.16本章小结309

第10章 Struts2.1 注解及应用整合310

视频教学:1小时10分钟

10.1 Struts2对注解的支持310

10.1.1 Action相关注解310

10.1.2 @Result注解312

10.2 拦截器的相关注解316

10.2.1 @After注解316

10.2.2 @Before注解317

10.2.3 @BeforeResult注解317

10.3 输入校验的相关注解317

10.3.1 @ConversionErrorFieldValidator注解317

10.3.2 @DateRangeFieldValidator注解318

10.3.3 @DoubleRangeFieldValidator注解318

10.3.4 @EmailValidator注解319

10.3.5 @ExpressionValidator注解319

10.3.6 @FieldExpressionValidator注解319

10.3.7 @IntRangeFieldValidator注解320

10.3.8 @RegexFieldValidator注解320

10.3.9 @RequiredFieldValidator注解321

10.3.10 @RequiredStringValidator注解321

10.3.11 @StringLengthFieldValidator注解322

10.3.12 @StringRegexValidator注解322

10.3.13 @UrlValidator注解322

10.3.14 @VisitorFieldValidator注解323

10.3.15 @CustomValidator注解323

10.4 类型转换的相关注解324

10.4.1 @CustomValidator注解324

10.4.2 @CreateIfNull注解324

10.4.3 @Element注解324

10.4.4 @Key注解325

10.4.5 @KeyProperty注解325

10.4.6 @TypeConversion注解325

10.5 Struts2整合JasperReports326

10.5.1 报表类库的设置326

10.5.2 创建视图文件327

10.5.3 创建Action327

10.5.4 配置Action328

10.5.5 设计并输出报表329

10.6 Struts2整合JFreeChart330

10.7 本章小结333

第11章 Spring2框架334

视频教学:1小时30分钟

11.1 Spring简介334

11.2 Spring的下载与安装335

11.3 体验Spring程序336

11.3.1 定义Action接口336

11.3.2 定义Action接口实现类336

11.3.3 Spring配置文件337

11.3.4 测试USB功能338

11.4 SpringBean封装机制339

11.5 SpringBean的配置与管理340

11.5.1 BeanFactory与Bean配置340

11.5.2 强制初始化Bean341

11.5.3 自动装配342

11.5.4 依赖检查342

11.5.5 Spring容器343

11.5.6 Web容器配置343

11.6 依赖注入的实现类型344

11.6.1 构造注入344

11.6.2 设值注入345

11.6.3 几种依赖注入模式的对比347

11.7 Bean的继承347

11.7.1 定义Bean继承347

11.7.2 SpringBean的继承与Java中继承的区别348

11.8 后处理器349

11.8.1 Bean后处理器349

11.8.2 容器后处理器351

11.9 本章小结352

第12章 Hibernate3框架354

视频教学:6时15分钟

12.1 ORM简介354

12.1.1 ORM特性354

12.1.2 流行的ORM框架介绍..3 54

12.2 Hibernate应用355

12.2.1 Hibernate的下载与安装355

12.2.2 Hibernate的简单应用与配置356

12.2.3 配置Hibernate360

12.2.4 Session管理360

12.2.5 使用自动化工具生成PO及XML映像文件361

12.2.6 配置Hibernate数据库连接池361

12.2.7 Hibernate的关系映射362

12.2.8 单向1-1的关系映射363

12.2.9 单向1-N的关系映射366

12.2.10 单向N-1的关系映射368

12.2.11 N-N的关系映射370

12.2.12 双向1-1关联373

12.2.13 双向1-N关联376

12.2.14 双向N-N关联378

12.3 Hibernate基本数据查询380

12.3.1 HQL的查询应用380

12.3.2 HQL语句的语法381

12.3.3 条件查询385

12.3.4 SQL查询387

12.4 提升Hibernate运行性能分析388

12.4.1 读取策略388

12.4.2 操作延迟加载的关联388

12.4.3 调整读取策略389

12.4.4 单端关联代理389

12.4.5 实例化集合和代理390

12.4.6 使用批量读取390

12.4.7 使用子查询读取391

12.4.8 使用延迟属性读取391

12.5 Hibernate中的缓存以及性能分析391

12.5.1 二级缓存392

12.5.2 缓存映射393

12.5.3 只读缓存策略393

12.5.4 读/写缓存策略393

12.5.5 非严格读/写缓存策略393

12.5.6 事务缓存策略394

12.5.7 管理缓存394

12.5.8 查询缓存394

12.5.9 提升集合性能395

12.5.10 Lists.maps和sets更新性能分析395

12.5.11 Bag和list在反向集合类中的性能分析396

12.6 Hibernate事务与并发管理396

12.6.1 SessionFactory工厂对象396

12.6.2 操作单元396

12.6.3 长对话397

12.6.4 Session中的对象标识398

12.6.5 数据库事务声明398

12.6.6 非托管环境399

12.6.7 使用JTA399

12.6.8 异常处理400

12.7 悲观锁和乐观锁401

12.7.1 应用程序级别的版本检查402

12.7.2 自动版本化403

12.7.3 托管对象和自动版本化404

12.7.4 定制自动版本化行为404

12.7.5 乐观锁在金融系统中的应用405

12.8 数据库连接的释放模式405

12.9 拦截器406

12.10 事件系统407

12.11 批量处理408

12.11.1 批量插入409

12.11.2 批量更新409

12.12 Hibernate对注解的支持409

12.13 用EJB3注解进行映射411

12.13.1 声明实体Bean411

12.13.2 表的定义412

12.13.3 乐观锁定版本控制412

12.13.4 属性映射412

12.13.5 主键属性映射415

12.13.6 映射继承关系417

12.13.7 实体Bean一对一映射419

12.13.8 实体Bean多对一映射421

12.13.9 集合类型422

12.13.10 实体Bean一对多映射423

12.13.11 实体Bean多对多映射425

12.13.12 用cascading实现传播性持久化426

12.13.13 关联关系获取426

12.13.14 映射复合主键与外键426

12.13.15 映射二级表427

12.14 Hibernate的注解扩展428

12.14.1 实体注解的扩展428

12.14.2 标识符注解的扩展429

12.14.3 属性注解的扩展430

12.14.4 单个关联关系的注解432

12.14.5 集合类型的注解433

12.14.6 缓存的注解434

12.15 Hibernate验证器434

12.15.1 Hibernate3内建约束435

12.15.2 错误信息435

12.15.3 注解项目中的领域模型436

12.16 Hibernate3与Lucene集成437

12.16.1 Lucene下载与安装437

12.16.2 使用Lucene为实体建立索引437

12.17 本章小结438

第13章 SSH架构应用整合439

视频教学:1小时40分钟

13.1 整合Struts2和Spring439

13.2 整合Hibernate和Spring440

13.2.1 Spring整合Hibernate方法440

13.2.2 Spring对Hibernate的DAO实现442

13.3 事务管理444

13.3.1 编程式的事务管理444

13.3.2 声明式的事务管理445

13.3.3 应用继承简化配置447

13.3.4 应用BeanNameAutoProxyCreator自动创建事务代理448

13.4 实例解析Struts2.1 与Sping2.Hibernate3集成450

13.4.1 配置应用项目450

13.4.2 创建实体表451

13.4.3 创建Hibernate框架451

13.4.4 创建DAO452

13.4.5 创建Action454

13.4.6 创建Spring应用455

13.4.7 测试部署应用457

13.5 本章小结458

第4部分 JavaEE篇

第14章 JavaEE架构技术460

视频教学:35分钟

14.1 JavaEE架构简介461

14.2 Windows下JavaEE开发环境的配置462

14.2.1 概述462

14.2.2 相关软件介绍462

14.2.3 JBoss的下载与安装463

14.2.4 JBoss的目录结构465

14.2.5 在JBoss中部署应用包465

14.2.6 在JBoss中发布Web应用组件EJB466

14.3 本章小结466

第15章 EJB3467

视频教学:2小时10分钟

15.1 EJB3简介467

15.1.1 应用EJB架构的优点468

15.1.2 EJB3和EJB2的区别468

15.2 JavaEE开发环境的搭建469

15.2.1 创建一个企业应用项目469

15.2.2 部署企业应用项目473

15.3 会话(Session)Bean477

15.4 无状态(Stateless)SessionBean477

15.4.1 设计只存在Remote接口的无状态SessionBean477

15.4.2 设计只存在Local接口的无状态SessionBean480

15.4.3 设计存在Remote与Local接口的无状态SessionBean482

15.5 有状态(Stateful)SessionBean485

15.5.1 设计StatefulSessionBean485

15.5.2 StatelessSessionBean与StatefulSessionBean的区别487

15.6 SessionBean的JNDI名称设置488

15.7 SessionBean的生命周期489

15.8 拦截器(Interceptor)492

15.9 依赖注入(dependencyinjection)495

15.1 0定时服务(TimerService)497

15.1 1本章小结499

第16章 JMS(JavaMessageService)500

视频教学:40分钟

16.1 JMS简介500

16.1.1 JMS基本概念500

16.1.2 JMS基本功能501

16.1.3 JMS消息正文格式502

16.1.4 JMS接口定义502

16.2 JMS消息模型503

16.2.1 消息头(Header)503

16.2.2 属性(Properties)503

16.2.3 消息体(Body)504

16.3 消息驱动Bean(MessageDrivenBean)504

16.3.1 Queue消息接口505

16.3.2 Topic消息接口509

16.4 本章小结514

第17章 实体Bean515

视频教学:1小时55分钟

17.1 实体Bean介绍515

17.1.1 EJB3中的元数据批注515

17.1.2 EntityBean的定义规则516

17.1.3 EntityBean中属性变量的访问和映射516

17.1.4 Entity类主键和实体标识517

17.1.5 编写实体Bean518

17.2 持久化EntityBean519

17.2.1 操作持久化EntityBean519

17.2.2 配置EntityManager的持久化内容520

17.2.3 配置EntityManager的数据源520

17.2.4 在MyEclipse中配置数据源522

17.2.5 应用MyEclipse生成实体Bean523

17.2.6 访问实体Bean527

17.3 持久化实体管理器EntityManager528

17.3.1 保存Entity529

17.3.2 获取Entity529

17.3.3 更新Entity529

17.3.4 合并Entity530

17.3.5 删除Entity530

17.3.6 EJB3QL查询531

17.3.7 Query接口531

17.4 关系/对象映射531

17.4.1 单向一对一的关系映射532

17.4.2 一对多关系映射537

17.4.3 多对多关系映射543

17.5 EJB3QL查询548

17.5.1 简单查询548

17.5.2 使用参数查询548

17.5.3 原生SQL查询549

17.6 EJB3QL语句的语法549

17.6.1 from子句549

17.6.2 select子句550

17.6.3 聚集函数550

17.6.4 多态查询550

17.6.5 where子句550

17.6.6 表达式551

17.6.7 表达式的使用551

17.6.8 关联(join)552

17.7 本章小结553

第18章 JSF框架554

视频教学:2小时10分钟

18.1 JSF介绍555

18.1.1 JSF体系结构555

18.1.2 JSF生命周期556

18.1.3 JSF参考实现的下载与配置557

18.2 开发第一个JSF应用程序558

18.2.1 创建Web应用558

18.2.2 设计用户登录JavaBean559

18.2.3 JSF的配置文件faces-config.xml560

18.2.4 设计网页程序561

18.2.5 JSF中导航规则的定义562

18.3 JSF表达式语言563

18.3.1 JSFEL的定义563

18.3.2 使用隐含变量564

18.3.3 JSF运算表达式565

18.4 JSF的国际化566

18.4.1 国际化资源文件的定义566

18.4.2 国际化资源文件的调用567

18.5 后台(Backing)Bean569

18.6 配置(Config)Bean569

18.7 Bean中的List和Map属性571

18.8 JSF转换器571

18.8.1 标准转换器571

18.8.2 使用自定义转换器573

18.9 JSF验证器576

18.9.1 使用标准验证器576

18.9.2 使用自定义验证器577

18.10 ErrorMessages578

18.11 JSF事件处理模型580

18.11.1 动作事件580

18.11.2 即时事件582

18.11.3 值改变事件585

18.12 JSF标准标签库586

18.12.1 输出标签586

18.12.2 输入标签587

18.12.3 命令标签588

18.12.4 选择标签589

18.12.5 高级标签590

18.13 JSFFacesContext对象597

18.13.1 获取当前实例597

18.13.2 处理消息597

18.13.3 处理请求事件598

18.13.4 处理Response对象598

18.14 JSFExternalContext对象598

18.14.1 使用ExternalContext类中的对象598

18.14.2 获取ServletContext属性599

18.14.3 获取Session对象及其属性599

18.14.4 获取ServletContext对象的初始参数599

18.14.5 获取Request对象的属性600

18.14.6 访问Request对象里的参数名和值600

18.14.7 获取Cookie601

18.14.8 获取请求头的名和值602

18.14.9 获取上下文路径602

18.14.10 获取当前语言环境603

18.14.11 获取资源路径603

18.15本章小结604

第5部分 项目实战篇

第19章 基于JSF+EJB3+A4J框架的网上定餐系统606

视频教学:2小时10分钟

19.1 系统需求说明607

19.1.1 项目背景607

19.1.2 需求分析607

19.1.3 主要用例说明608

19.2 系统架构设计608

19.3 网上定餐系统的架构说明608

19.3.1 客户层609

19.3.2 Web层609

19.3.3 Service层609

19.3.4 DAO层609

19.3.5 数据持久层PO609

19.3.6 值对象层VO609

19.4 业务实体层设计610

19.4.1 设计域模型610

19.4.2 设计数据模型611

19.5 网上定餐系统开发环境的搭建612

19.5.1 创建Web及JSF应用612

19.5.2 A4J的配置613

19.6 创建实体Bean613

19.6.1 创建实体表613

19.6.2 编写Entity615

19.7 创建DAO619

19.7.1 创建用户管理DAO接口619

19.7.2 创建菜单管理DAO接口620

19.7.3 创建购物车管理DAO接口620

19.7.4 创建定单管理DAO接口621

19.7.5 创建用户管理接口的实现会话Bean622

19.7.6 创建菜单管理接口的实现会话Bean623

19.7.7 创建购物车接口的实现会话Bean623

19.7.8 创建定单管理接口的实现会话Bean624

19.8 创建Web业务逻辑组件625

19.8.1 用户管理服务组件625

19.8.2 菜单管理服务组件627

19.8.3 购物车服务组件628

19.8.4 定单服务组件629

19.8.5 创建VO组件630

19.9 创建Action组件631

19.9.1 创建JSF调用的用户管理Action组件631

19.9.2 创建JSF调用的菜单管理Action组件632

19.9.3 创建JSF调用的购物车管理Action组件633

19.9.4 创建JSF调用的定单管理Action组件635

19.10 JSF的配置636

19.11 应用A4J和JSF设计Web页面639

19.11.1 设计引导文件639

19.11.2 设计登录页面639

19.11.3 设计用户管理页面640

19.11.4 设计主页面644

19.11.5 设计菜单显示页面645

19.11.6 设计购物车页面646

19.11.7 设计定单页面648

19.11.8 设计CSS文件649

19.11.9 部署并运行程序650

19.12本章小结650

第20章 飞机零部件电子商务交易平台(BSP)651

视频教学:4小时

20.1 系统需求说明652

20.1.1 项目背景652

20.1.2 需求分析652

20.1.3 主要用例说明652

20.2 系统架构设计653

20.2.1 BSP系统架构说明653

20.2.2 采用框架开发的优点655

20.2.3 系统软硬件环境656

20.3 BSP软件开发过程657

20.3.1 应用RUP的过程657

20.3.2 应用XP的最佳实践657

20.3.3 在BSP中使用CMM的关键域的规范流程657

20.4 BSP软件开发变更控制流程658

20.4.1 BSP变更申请的处理流程658

20.4.2 BSP需求变更的处理步骤659

20.4.3 BSP决策后的处理步骤659

20.5 BSP项目中的角色和职责659

20.5.1 BSP项目组织结构659

20.5.2 BSP项目组各个成员的职责660

20.6 BSP质量保证流程661

20.6.1 BSP项目质量保证计划662

20.6.2 BSP项目实施质量管理活动662

20.6.3 BSP项目质量问题跟踪与质量改进662

20.6.4 BSP项目风险管理662

20.6.5 BSP系统安全控制策略663

20.7 大规模高并发访问BSP的性能分析664

20.7.1 应用服务器中JVM虚拟机的优化664

20.7.2 JVM虚拟机中对字节码优化的策略664

20.7.3 堆大小设置665

20.7.4 回收器选择665

20.7.5 年轻代大小选择666

20.7.6 年老代大小选择666

20.7.7 较小堆引起的碎片分析666

20.7.8 在实际编程中对内存的优化667

20.7.9 集群与负载均衡667

20.7.1 0配置Apache+JK2+Tomcat集群与负载均衡668

20.7.1 1二级缓存以及存取性能分析设计670

20.8 业务实体层设计670

20.8.1 设计域模型671

20.8.2 设计数据模型672

20.8.3 创建数据库676

20.9 BSP开发环境的搭建676

20.9.1 应用MyEclipse创建BSP项目676

20.9.2 HibernateAnnonations设置677

20.9.3 应用Hibernate3注解设计数据持久层677

20.9.4 Struts2.1 应用设置684

20.9.5 Spring2.5 应用设置685

20.9.6 Dojo应用设置687

20.9.7 DWR应用设置687

20.10 DAO层设计688

20.11 业务逻辑层设计690

20.12 Web层设计692

20.12.1 表现层UI设计693

20.12.2 访问控制层公用类设计697

20.13 BSP系统目录及模块列表设计699

20.14 BSP主页面设计700

20.14.1 利用Dojo和Struts2设计登录表现层界面700

20.14.2 应用Struts2注解设计登录控制层Action701

20.14.3 设计模型驱动层VO704

20.14.4 登录DAO层实现设计704

20.14.5 登录业务逻辑层实现设计705

20.14.6 登录验证码的应用706

20.14.7 利用Strtus2和Ajax实现验证码707

20.15 BSP用户注册实现设计708

20.15.1 利用Dojo.DWR和Struts2设计用户注册首页710

20.15.2 利用Dojo.DWR和Struts2设计公司注册页面711

20.15.3 利用Dojo.DWR和Struts2设计管理员注册页面712

20.15.4 利用Dojo.DWR和Struts2设计普通用户注册页面713

20.15.5 用户注册控制层流程分析715

20.15.6 应用Struts2注解设计用户注册首页控制层Action715

20.15.7 应用Struts2注解和DWR设计公司注册控制层Action717

20.15.8 公司注册模型驱动层VO719

20.15.9 应用DWR.Dojo.Spring.Struts2实现Ajax调用719

20.15.10 应用Struts2注解设计普通用户注册控制层Action721

20.15.11 用户注册模型驱动层VO723

20.15.12 应用DWR.Spring判断公司是否已注册的Ajax调用723

20.15.13 注册DAO层实现设计725

20.15.14 注册业务逻辑层实现设计727

20.15.15 部署层发送邮件系统的设计728

20.16 用户找回密码实现设计731

20.16.1 利用Dojo.Struts2设计找回密码表现层界面731

20.16.2 找回密码控制层动作类的设计732

20.16.3 找回密码模型驱动层VO733

20.16.4 找回密码DAO层的实现设计733

20.16.5 找回密码业务逻辑层的实现设计733

20.17 公告信息发布实现设计733

20.17.1 公告信息浏览表现层界面设计734

20.17.2 利用Ajax.Struts2和Hibernate进行显示分页738

20.17.3 分页器的设计738

20.17.4 在Struts2的Action中分页控制740

20.17.5 公告信息发布模型驱动层VO742

20.17.6 在DAO中实现分页742

20.17.7 利用Dojo的Dialog组件设计发布公告页面742

20.17.8 发布公告信息控制层动作类的设计743

20.17.9 公告信息DAO层实现设计744

20.17.10 公告信息发布逻辑控制层实现设计745

20.18 联系人通讯录的设计746

20.18.1 利用Dojo.Struts2设计联系人通讯录表现层界面747

20.18.2 利用Dojo的Dialog组件设计增加通讯录表现层界面748

20.18.3 增加联系人信息控制层动作类的设计749

20.18.4 增加联系人DAO层实现设计750

20.18.5 增加联系人逻辑控制层实现设计751

20.19 公司认证管理的设计752

20.19.1 显示公司认证信息表现层界面设计752

20.19.2 利用Dojo的Dialog组件设计增加公司认证信息表现层界面753

20.19.3 公司认证信息控制层动作类的设计754

20.19.4 公司认证模型驱动层VO755

20.19.5 增加公司认证DAO层实现设计755

20.19.6 增加公司认证逻辑控制层实现设计756

20.20 询价单管理757

20.20.1 新建询价单表现层界面设计758

20.20.2 利用Dojo的Dialog等组件设计增加询价的部件表现层界面759

20.20.3 利用DWR.Dojo组件设计指定联系人表现层界面761

20.20.4 询价单模型驱动层VO762

20.20.5 配置DWR762

20.20.6 DWR与Spring整合配置762

20.20.7 调用远程对象762

20.20.8 显示已发送的询价单表现层界面设计763

20.20.9 询价单信息控制层动作类的设计764

20.20.10 询价单DAO层实现设计768

20.20.11 询价单管理逻辑控制层实现设计770

20.21 利用Quartz定时邮件发送实现设计772

20.21.1 Quartz的应用772

20.21.2 Quartz包含的触发器773

20.21.3 作业任务的的调度实现774

20.22 BSP实时消息系统的设计776

20.22.1 利用DWR的反向Ajax技术实现消息系统776

20.22.2 反向Ajax的配置与实现776

20.22.3 反向Ajax调用的服务器端的发布者实现777

20.22.4 BSP消息发布与接收页面的设计778

20.23本章小结780

内容摘要:

本书充满激情地介绍了各种Java主流开发技术以及这些技术的应用整合并在实践项目中如何利用这些技术开发大型Web项目。 站在开发实践的角度,详细介绍了如何综合运用Struts 2.1、Hibernate3、Spring 2.5、EJB3、JSF、A4J、DWR/Dojo、JasperReports等众多最眩的技术开发大型电子商务系统。涵盖Struts 2.1最新的注解(Annotation)配置方式和Hibernate 3.2的最新注解(Annotation)配置方式,并且将EJB 3与Hibernate 3.2的最新注解结合起来应用,这在国内外的同类图书中尚属首次。在本书中,通过两个极具实战价值的Web 2.0项目(包括飞机零部件电子商务交易平台、网上定餐电子商务系统)直观而生动地展示了Java平台上与Ajax相关的各种技术的综合运用,涉及Struts 2.1、Hibernate3、Spring 2、DWR、Dojo、A4J、JSF、EJB3、JMS等,每个项目都完整地讲解了从规划、设计到实现的全过程。本书还附赠42个小时作者亲自录制的全程多媒体教学课程DVD,为读者快速有效地掌握本书内容提供了最佳捷径。本书适合广大Java爱好者及程序开发人员,尤其适合那些希望尽快掌握Java Web 2.0项目开发的人员阅读参考。

编辑推荐:

开发专家的企业级项目开发体验,基础应用+Ajax/Web2.0应用+SSH架构+Java EE+项目实战。
42小时多媒体视频讲解,提供可移植使用的大型范例全部源代码
技术要点:
3个主流Ajax(A4J、Dojo、DWR)开源框架的应用详解;3个主流JavaWeb(SSH)开源框架的应用详解;主流JavaEE(EJB3、JMS、JSE)框架技术与应用详解;最新Struts2.1对Ajax及注解支持的整合开发;EJB3与Hibernate3.3的最新注解整合应用;全程实录两个源于实践的大型电子商务系统的开发。
基础应用篇介绍Java应用运行及开发环境的安装与配置、系统开发的版本控制AVN、系统文档设计系统WIKI-Confluence、BUG追踪系统JIRA、XML编程以及报表工具Jasper Reports的应用。
Ajax/Web2.0应用篇详细介绍JavaScript的高级应用、AjaxL与Web2.0应用架构、A4J框架、DWR框架、Dojo框架。
SSH架构篇详细介绍Struts2.1框架、Struts2.1注解及应用整合、Sprin92框架、Hibernate3框架、SSH架构应用整合。
JavaEE篇详细介绍JavaEE架构技术、EJB3技术、JMS技术、实体Bean技术、JSF框架技术。
项目实战篇通过两个极具实战价值的大型电子商务系统直观而生动地展示了Java平台上与Ajax相关的各种技术的综合运用。
案例一:
通过完整的在线网上定餐系统讲解如何利用EJB3+A4J+JSF1.2技术开发Web2.0系统。
案例二:
通过一个电子商务交易平台讲解如何利用基于Hibernate3+Spring2+Struts2+Ajax+DWR+Doj0构架开发Web2.0电子商务系统。
源于实践,精于开发。

书籍规格:

书籍详细信息
书名Java Web 2.0架构开发与项目实战站内查询相似图书
9787302209980
如需购买下载《Java Web 2.0架构开发与项目实战》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位清华大学出版社
版次1版印次1
定价(元)88.0语种简体中文
尺寸26 × 0装帧平装
页数 880 印数 4000

书籍信息归属:

Java Web 2.0架构开发与项目实战是清华大学出版社于2009.9出版的中图分类号为 TP312 的主题关于 JAVA语言-程序设计 的书籍。