Struts 2实战(图灵程序设计丛书·Java系列)(Struts 2 in Action)
分類: 图书,计算机与互联网,软件工程及软件方法学,
品牌: Donald Brown Chad Mi
基本信息·出版社:人民邮电出版社
·页码:332 页
·出版日期:2010年02月
·ISBN:9787115219336
·条形码:9787115219336
·版本:第1版
·装帧:平装
·开本:16
·正文语种:中文
·读者对象:Java Web应用开发人员。
·丛书名:图灵程序设计丛书·Java系列
·外文书名:Struts 2 in Action
产品信息有问题吗?请帮我们更新产品信息。
内容简介本书结合实例介绍了Struts 2框架,主要内容包括Action、Result、Interceptor等框架组件,基于注解的配置选项等新特征,Struts 2插件 FreeMarker,如何从Struts 1和WebWork 2迁移到Struts 2,Ajax标签、Spring框架集成等新特性。
本书适合各层次Java开发人员阅读和参考。
目录
目录
第一部分Strut 2:一个全新的框架
第1章Struts 2:现代Web框架2
1.1Web应用程序:快速学习2
1.1.1构建Web应用程序2
1.1.2基础技术简介3
1.1.3深入研究6
1.2Web应用程序框架7
1.2.1什么是框架7
1.2.2为什么使用框架8
1.3Struts 2框架9
1.3.1Struts 2简史9
1.3.2Struts 2概览:MVC模式10
1.3.3Struts 2的工作原理12
1.4小结14
第2章初识Struts 216
2.1声明性架构16
2.1.1两种配置16
2.1.2声明架构的两种方式17
2.1.3智能默认值20
2.2简单的HelloWorld示例20
2.2.1部署示例应用程序20
2.2.2探索HelloWorld应用程序24
2.3使用注解的HelloWorld31
2.4小结33
第二部分核心概念:动作、拦截器和类型转换
第3章使用Struts 2动作36
3.1Struts 2动作简介36
3.2打包动作39
3.2.1Struts 2公文包示例应用程序39
3.2.2组织你的包39
3.2.3使用struts-default包中的组件41
3.3实现动作43
3.3.1可选的Action接口44
3.3.2ActionSupport类45
3.4向对象传递数据51
3.4.1对象支持的JavaBean属性52
3.4.2ModelDriven动作54
3.4.3域对象用作数据转移的潜在危险55
3.5案例研究:文件上传56
3.5.1通过struts-default包获得内建的支持56
3.5.2fileUpload拦截器做什么57
3.5.3Struts 2公文包示例代码研究58
3.6小结60
第4章使用拦截器追加工作流61
4.1为什么要拦截请求61
4.1.1清理MVC61
4.1.2从拦截器受益63
4.1.3开发拦截器64
4.2拦截器的工作原理64
4.2.1总指挥ActionInvocation64
4.2.2如何触发拦截器64
4.3研究内建的Struts 2拦截器67
4.3.1工具拦截器67
4.3.2数据转移拦截器67
4.3.3工作流拦截器69
4.3.4其他拦截器72
4.3.5内建的拦截器栈73
4.4声明拦截器74
4.4.1声明独立的拦截器和拦截器栈74
4.4.2将拦截器映射到动作组件76
4.4.3设置、覆盖拦截器参数77
4.5构建自定义拦截器78
4.5.1实现Interceptor接口78
4.5.2构建AuthenticationInterceptor拦截器79
4.6小结82
第5章数据转移:OGNL和类型转换84
5.1数据转移和类型转换:Web应用程序领域的常见任务85
5.2OGNL和Struts 285
5.2.1OGNL是什么85
5.2.2OGNL如何融入框架87
5.3内建的类型转换器89
5.3.1立即可用的类型转换器89
5.3.2使用OGNL表达式从表单字段名映射到属性90
5.4自定义类型转换101
5.4.1实现类型转换器102
5.4.2在String和Circle之间转换102
5.4.3配置框架使用自定义转换器103
5.5小结106
第三部分构建视图——标签和结果
第6章构建视图——标签108
6.1入门108
6.1.1ActionContext和OGNL109
6.1.2虚拟对象ValueStack111
6.2Struts 2标签概要113
6.2.1Struts 2标签API语法113
6.2.2使用OGNL设置标签属性115
6.3数据标签117
6.3.1property标签117
6.3.2set标签118
6.3.3push标签119
6.3.4bean标签120
6.3.5action标签122
6.4控制标签124
6.4.1iterator标签124
6.4.2if和else标签125
6.5其他标签126
6.5.1include标签126
6.5.2URL标签127
6.5.3i18n和text标签128
6.5.4param标签129
6.6使用JSTL和其他本地标签130
6.7OGNL表达式语言的基础知识130
6.7.1什么是OGNL130
6.7.2Struts 2中常用的表达式语言特性131
6.7.3表达式语言的高级特性135
6.8小结137
第7章UI组件标签139
7.1为什么需要UI组件标签139
7.2标签、模板和主题144
7.2.1标签146
7.2.2模板146
7.2.3主题146
7.3UI组件标签148
7.3.1通用属性148
7.3.2简单组件149
7.3.3基于集合的组件159
7.3.4额外的组件166
7.4小结168
第8章结果170
8.1动作之后170
8.1.1页面上:如何使用自定义结果组件构建Struts 2 Ajax应用程序171
8.1.2实现JSON结果类型173
8.2常用的结果类型180
8.2.1RequestDispatcher,也叫做dispatcher180
8.2.2ServletRedirectResult,也叫做redirect186
8.2.3ServletActionRedirectResult,也叫做redirectAction188
8.3JSP替代品189
8.3.1VelocityResult,也叫做velocity189
8.3.2FreemarkerResult,也叫做freemarker191
8.4全局结果192
8.5小结193
第四部分完善应用程序
第9章集成Spring和Hibernate/JPA196
9.1为什么在Struts 2中使用Spring196
9.1.1依赖注入能做些什么197
9.1.2Spring如何管理对象和注入依赖199
9.1.3使用接口隐藏实现200
9.2将Spring添加到Struts 2202
9.2.1让Spring管理动作、拦截器和结果的创建203
9.2.2使用自动连线将依赖注入到动作、拦截器和结果205
9.3为什么在Struts 2中使用JPA207
9.3.1使用JPA和Hibernate建立项目208
9.3.2基于Spring管理JPA编写代码212
9.4小结216
第10章探索验证框架217
10.1熟悉数据验证框架217
10.1.1验证框架的架构218
10.1.2Struts 2工作流中的验证框架219
10.2将动作关联到验证框架222
10.2.1使用ActionClass-validations.xml声明验证元数据223
10.2.2研究内建的验证器226
10.3编写自定义验证器227
10.3.1检查密码强度的自定义验证器227
10.3.2使用自定义数据验证器229
10.4验证框架的高级主题230
10.4.1在域对象级别验证231
10.4.2使用验证上下文优化验证233
10.4.3验证继承235
10.4.4验证短路效应236
10.4.5使用注解声明验证237
10.5小结239
第11章理解国际化240
11.1Struts 2框架和Java i18n241
11.1.1使用ResourceBundle和Locale取得本地化文本241
11.1.2Struts 2如何解决本地Java对i18n支持的问题243
11.2Struts 2 i18n示例244
11.2.1Struts 2 i18n快速展示244
11.2.2幕后一览246
11.3Struts 2 i18n详情247
11.3.1Struts 2默认的TextProvider Re-sourceBundle搜索算法248
11.3.2从包中取得消息文本251
11.3.3使用i18n标签指定包254
11.3.4参数化本地化文本255
11.3.5格式化日期和数字256
11.4覆盖框架默认的地域决定257
11.4.1让用户交互地设置地域257
11.4.2以编码的方式设置地域259
11.5小结260
第五部分高级主题和最佳实践
第12章使用插件扩展Struts 2264
12.1插件概要264
12.2常用插件265
12.2.1SiteMesh266
12.2.2Tiles267
12.2.3JFreeChart269
12.3内部组件系统271
12.3.1Bean271
12.3.2常量272
12.3.3注入272
12.3.4Struts内部扩展点273
12.4编写浏览路径插件274
12.5小结278
第13章最佳实践279
13.1建立开发环境279
13.1.1建立IDE280
13.1.2重新加载资源280
13.2对动作进行单元测试281
13.2.1将IoC用于测试的优势281
13.2.2JUnit与测试282
13.2.3测试validation.xml文件284
13.3最大化重用284
13.3.1使用component标签组件化285
13.3.2重用模板化的标签286
13.3.3连接UI标签和对象287
13.4高级UI标签的使用288
13.4.1覆盖既有模板288
13.4.2编写自定义模板288
13.4.3编写自定义主题289
13.5小结289
第14章从经典Struts迁移290
14.1翻译经典Struts的知识290
14.1.1动作290
14.1.2ActionForm怎么了292
14.1.3切换标签库293
14.1.4拆分消息资源294
14.2逐步转换296
14.2.1逐步实现296
14.2.2动作映射298
14.2.3动作在哪里遇到表单300
14.2.4转换页面301
14.2.5不说英语303
14.2.6数据警察304
14.2.7两者能够和睦相处吗306
14.3小结307
第15章高级主题308
15.1高级动作的应用308
15.2动态方法调用310
15.2.1通配符方法的选择310
15.2.2动态工作流312
15.3使用令牌防止表单重复提交313
15.3.1使用表单标签313
15.3.2令牌拦截器规则的例外314
15.4自动显示等待页面316
15.5完成CRUD操作的一个动作317
15.5.1CRUD317
15.5.2拦截器和接口318
15.5.3连接各部分323
15.6Tiles和Struts2325
15.6.1关注网站的界面外观325
15.6.2配置相互关系326
15.6.3使用声明性架构329
15.6.4使用Tiles控制器准备网页内容331
15.7小结332
……[看更多目录]