图书目录

第1章Struts 2入门1

1.1MVC模式1

1.2Struts 2的体系结构2

1.3Struts 2的工作环境3

1.3.1Struts 2的下载与安装4

1.3.2使用Eclipse开发Struts 2的Web应用4

1.3.3使用MyEclipse开发Struts 2的Web应用10

1.4第一个Struts 2应用14

1.4.1用户请求页面14

1.4.2Action实现15

1.4.3配置Action15

1.4.4发布并运行Web应用16

1.4.5struts.xml配置中的包属性介绍19

1.5实践环节19

1.6本章小结19

习题120第2章Struts 2的Action21

2.1Action的创建与配置21

2.1.1Action的创建方式21

2.1.2Action的配置23

2.1.3DMI以及通配符24

2.1.4实践环节26

2.2Action接收请求参数26

2.2.1使用Action属性接收参数26

2.2.2使用DomainModel接收参数27

2.2.3使用ModelDriven<T>接口接收参数29

2.2.4实践环节29

2.3Action访问Servlet API30

2.3.1通过ActionContext30

2.3.2实现RequestAware、SessionAware和ApplicationAware接口32

2.3.3通过ServletActionContext33

2.3.4实现ServletRequestAware接口34

2.3.5实践环节35

2.4struts.xml文件中的include及constant36

2.4.1include的配置36

2.4.2constant的配置36

2.5Action中常见的结果类型37

2.5.1chain类型37

2.5.2redirectAction类型38

2.5.3redirect类型39

2.5.4dispatcher类型39

2.5.5全局result39

2.5.6实践环节40

2.6包的继承41

2.7本章小结42

习题242第3章Struts 2的类型转换43

3.1类型转换的意义43

3.2Struts 2内置的类型转换器45

3.3自定义类型转换器47

3.3.1实现类型转换器50

3.3.2注册类型转换器52

3.3.3实践环节53

3.4数组属性的类型转换器53

3.5集合属性的类型转换器56

3.6本章小结58

习题358第4章Struts 2的拦截器59

4.1拦截器概述59

4.1.1拦截器的原理59

4.1.2拦截器与过滤器的区别59

4.1.3Struts 2内置的拦截器60

4.2拦截器的配置61

4.2.1配置拦截器62

4.2.2拦截器栈63

4.2.3默认拦截器63

4.2.4实践环节64

4.3自定义拦截器64

4.3.1实现Interceptor接口65

4.3.2继承AbstractInterceptor类67

4.3.3继承MethodFilterInterceptor类67

4.3.4实践环节69

4.4使用自定义拦截器完成权限验证71

4.5本章小结74

习题474第5章表达式语言OGNL76

5.1OGNL简介76

5.2OGNL基础76

5.2.1OGNL上下文78

5.2.2值栈81

5.2.3OGNL的访问83

5.2.4实践环节85

5.3OGNL基本语法85

5.3.1常量86

5.3.2操作符86

5.3.3OGNL表达式87

5.3.4实践环节91

5.4本章小结96

习题596第6章Struts 2中的标签97

6.1标签库概述97

6.1.1标签的分类97

6.1.2标签的使用97

6.1.3标签的语法97

6.2数据标签98

6.2.1action标签99

6.2.2bean标签102

6.2.3date标签103

6.2.4debug标签104

6.2.5include标签105

6.2.6param标签106

6.2.7push标签106

6.2.8set标签107

6.2.9url标签108

6.2.10property标签109

6.2.11实践环节109

6.3流程控制标签110

6.3.1if/elseif/else标签110

6.3.2iterator标签111

6.3.3append标签113

6.3.4generator标签114

6.3.5merge标签115

6.3.6subset标签115

6.3.7sort标签117

6.3.8实践环节118

6.4表单标签118

6.4.1表单标签的通用属性118

6.4.2checkboxlist标签119

6.4.3combobox标签121

6.4.4doubleselect标签122

6.4.5optiontransferselect标签123

6.4.6select标签125

6.4.7optgroup标签126

6.4.8radio标签127

6.4.9实践环节128

6.5非表单标签129

6.6本章小结131

习题6131第7章Struts 2的输入校验132

7.1输入校验概述132

7.1.1客户端校验132

7.1.2服务器端校验136

7.2手动编程校验136

7.2.1重写validate()方法136

7.2.2重写validateXxx()方法139

7.2.3输入校验的流程140

7.2.4实践环节140

7.3校验框架校验141

7.3.1Struts 2内置的校验器141

7.3.2常用内置校验器的配置142

7.3.3校验Action中所有与execute签名相同的方法143

7.3.4校验Action中某个与execute签名相同的方法145

7.3.5校验文件搜索顺序146

7.3.6实践环节146

7.4本章小结146

习题7147第8章Struts 2的国际化148

8.1程序国际化概述148

8.1.1Java国际化的思想148

8.1.2Java支持的语言和国家149

8.1.3Java程序国际化150

8.1.4带占位符的国际化信息152

8.1.5实践环节152

8.2国际化的步骤153

8.2.1Struts 2中加载全局资源文件153

8.2.2国际化信息输出153

8.2.3实践环节156

8.3资源文件的加载方式157

8.3.1包范围资源文件157

8.3.2Action范围资源文件157

8.3.3临时指定资源文件157

8.4用户自定义切换语言示例158

8.5本章小结162

习题8163第9章文件的上传与下载164

9.1Struts 2文件上传164

9.1.1基于表单的文件上传164

9.1.2Struts 2单文件上传165

9.1.3拦截器实现文件过滤168

9.1.4文件上传的常量配置169

9.1.5Struts 2多文件上传169

9.1.6实践环节172

9.2Struts 2文件下载172

9.3本章小结176

习题9176第10章电子商务平台的设计与实现178

10.1系统设计178

10.1.1系统功能需求178

10.1.2系统模块划分178

10.2数据库设计179

10.2.1数据库概念结构设计179

10.2.2数据逻辑结构设计181

10.2.3创建数据表182

10.3系统管理185

10.3.1导入相关的jar包185

10.3.2JSP页面管理185

10.3.3包管理189

10.3.4配置文件管理189

10.4组件设计195

10.4.1过滤器195

10.4.2拦截器195

10.4.3验证码196

10.4.4数据库操作196

10.5后台管理子系统的实现211

10.5.1Action的实现212

10.5.2管理员登录218

10.5.3添加商品219

10.5.4查询商品221

10.5.5修改商品223

10.5.6删除商品226

10.5.7订单管理227

10.5.8用户管理228

10.5.9公告管理229

10.5.10退出系统232

10.6前台电子商务子系统的实现232

10.6.1Action的实现233

10.6.2导航栏239

10.6.3销售排行243

10.6.4人气排行243

10.6.5最新商品243

10.6.6公告栏243

10.6.7用户注册243

10.6.8用户登录243

10.6.9商品详情244

10.6.10关注商品246

10.6.11购物车246

10.6.12下单249

10.6.13用户中心251

10.7本章小结255

参考文献256