精通Struts:基于MVC的Java Web设计与开发

副标题:无

作   者:孙卫琴编著

分类号:

ISBN:9787121000522

微信扫一扫,移动浏览光盘

简介

★ 面向java web开发者,透彻分析struts框架。    ★ 基于当红开源软件struts最新版本    ★ 结合大量典型实用的java web实例    ★ 孙卫琴最新力作,《tomcat与java web开发技术详解》姐妹篇,再掀开源软件图书销售热潮       struts是目前非常流行的基于mvc的java web框架。 本书详细介绍了在最新的struts1.1以及不久将推出的struts1.2版本上设计和开发java web应用的各种技术。 本书第1章到第3章为入门篇,通过两个struts应用实例,引导读者把握设计、开发和部署struts应用的整体流程,充分体会struts框架在开放大型、可扩展的web应用方面发挥的优势。第4章到第7章深入探讨了struts框架的核心组件actionservlet和requestprocessor的实现原理,详细介绍了开发struts应用的模型、视图和控制器的各种技术,细致的描述了struts配置文件的每个元素的使用方法。第8章到第9章介绍了开发struts应用的一些实用技术,如struts框架的扩展点、struts应用的国际化,validator验证框架和异常处理机制等。第12章到第16章结合具体的struts应用实例,详细介绍了struts的标签库以及tiles框架的使用方法。第17章和第18章介绍如何采用ejb和web服务来实现struts框架的模型。第19章到第21章介绍了如何采用第三方软件,如apache common logging api、log4j、ant和strutstestcase,来控制struts应用的输出日志、管理以及测试struts应用项目。

目录

第1章 struts与java web应用简介 1

1.1 java web应用概述 1

1.1.1 servlet组件 2

1.1.2 jsp组件 3

1.1.3 共享数据在web应用中的范围 3

1.1.4 javabean组件及其在web应用中的范围 5

1.1.5 客户化jsp标签 5

1.1.6 ejb组件 6

1.1.7 xml语言 6

1.1.8 web服务器和应用服务器 7

1.2 web组件的三种关联关系 7

1.2.1 请求转发 7

1.2.2 请求重定向 8

1.2.3 包含 9

1.3 mvc概述 9

1.3.1 mvc设计模式 10

1.3.2 jsp model1和jsp model2 11

1.4 struts概述 13

1.4.1 struts实现mvc的机制 13

1.4.2 struts的工作流程 15

.1.5 小结 17

第2章 struts应用:helloapp应用 19

2.1 分析helloapp应用的需求 19

2.2 运用struts框架 19

2.3 创建视图组件 20

2.3.1 创建jsp文件 20

2.3.2 创建消息资源文件 23

2.3.3 创建actionform bean 23

2.3.4 数据验证 25

2.4 创建控制器组件 26

2.4.1 action类的工作机制 28

2.4.2 访问封装在messageresources中的本地化文本 28

2.4.3 业务逻辑验证 28

2.4.4 访问模型组件 29

2.4.5 向视图组件传递数据 30

2.4.6 把http请求转发给合适的视图组件 30

2.5 创建模型组件 30

2.6 创建存放常量的java文件 31

2.7 创建配置文件 32

2.7.1 创建web应用的配置文件 32

2.7.2 创建struts框架的配置文件 33

2.8 发布和运行helloapp应用 35

2.8.1 服务器端装载hello.jsp的流程 37

2.8.2 表单验证的流程 37

2.8.3 逻辑验证失败的流程 39

2.8.4 逻辑验证成功的流程 40

2.9 小结 41

第3章 struts应用的需求分析与设计 43

3.1 收集和分析应用需求 43

3.2 设计数据库 44

3.3 设计应用的业务逻辑 45

3.3.1 访问xml格式的用户信息 45

3.3.2 访问数据库 47

3.4 设计用户界面 49

3.4.1 界面风格 50

3.4.2 使用客户化标签 52

3.5 设计actionform 53

3.6 设计action和action映射 55

3.6.1 设计logonaction 58

3.6.2 设计logoffaction 60

3.6.3 设计insertaction 61

3.6.4 设计searchaction 62

3.6.5 设计displayallaction 63

3.7 设计客户化标签 64

3.7.1 设计validatesessiontag标签 64

3.7.2 设计displaytag标签 66

3.7.3 创建客户化app标签库的tld文件 67

3.8 小结 68

第4章 配置struts应用 71

4.1 web应用的发布描述文件 71

4.1.1 web应用发布描述文件的文档类型定义(dtd) 71

4.2 为struts应用配置web.xml文件 72

4.2.1 配置struts的actionservlet 72

4.2.2 声明actionservlet的初始化参数 73

4.2.3 配置欢迎文件清单 74

4.2.4 配置错误处理 75

4.2.5 配置struts标签库 76

4.3 struts 配置文件 77

4.3.1 org.apache.struts.config包 77

4.3.2 [struts-config]元素 79

4.3.3 [data-sources]元素 80

4.3.4 [form-beans]元素 82

4.3.5 [global-exceptions]元素 83

4.3.6 [global-forwards]元素 84

4.3.7 [action-mappings]元素 85

4.3.8 [controller]元素 87

4.3.9 [message-resources]元素 87

4.3.10 [plug-in]元素 88

4.3.11 配置多应用模块 89

4.4 digester 组件 91

4.5 struts 控制面板工具 91

4.6 重新载入配置文件 93

4.7 小结 94

第5章 struts控制器组件 95

5.1 控制器组件的控制机制 95

5.1.1 actionservlet类 96

5.1.2 requestprocessor类 99

5.1.3 action类 105

5.2 使用内置的struts action类 112

5.2.1 org.apache.struts.actions.forwardaction类 112

5.2.2 org.apache.struts.actions.includeaction类 114

5.2.3 org.apache.struts.actions.dispatchaction类 115

5.2.4 org.apache.struts.actions.lookupdispatchaction类 118

5.2.5 org.apache.struts.actions.switchaction类 121

5.3 利用token解决重复提交 121

5.4 实用类 125

5.4.1 requestutils类 125

5.4.2 tagutils类 125

5.4.3 moduleutils类 126

5.4.4 globals类 126

5.5 小结 127

第6章 struts模型组件 129

6.1 模型在mvc中的地位 129

6.2 模型的概念和类型 130

6.2.1 概念模型 130

6.2.2 设计模型 131

6.3 业务对象(bo) 133

6.3.1 业务对象的特征和类型 133

6.3.2 业务对象的重要性 134

6.4 业务对象的持久化 134

6.4.1 对业务对象进行持久化的作用 135

6.4.2 数据访问对象(dao)设计模式 135

6.4.3 常用的orm软件 136

6.5 创建netstore应用的模型 137

6.5.1 为netstore应用创建模型的步骤 137

6.5.2 创建netstore应用的业务对象 138

6.5.3 创建netstore应用的数据库 142

6.5.4 netstore应用的orm框架 145

6.5.5 联合使用业务代理和dao模式 155

6.6 小结 167

第7章 struts视图组件 169

7.1 视图概述 169

7.2 在视图中使用javabean 170

7.2.1 dto数据传输对象 170

7.2.2 struts框架提供的dto:actionform bean 171

7.3 使用actionform 172

7.3.1 actionform的生命周期 172

7.3.2 创建actionform 174

7.3.3 配置actionform 176

7.3.4 访问actionform 177

7.3.5 处理表单跨页 178

7.4 使用动态actionform 184

7.4.1 配置动态actionform 185

7.4.2 动态actionform的reset()方法 186

7.4.3 访问动态actionform 187

7.4.4 动态actionform的表单验证 187

7.4.5 在netstore应用中使用动态actionform 187

7.5 小结 189

第8章 扩展struts框架 191

8.1 struts插件(plugin) 191

8.2 扩展struts的配置类 194

8.3 控制器扩展点 195

8.3.1 扩展actionservlet类 195

8.3.2 扩展requestprocessor类 196

8.3.3 扩展action类 198

8.4 扩展视图组件 200

8.5 扩展模型组件 200

8.6 小结 204

第9章 struts应用的国际化 205

9.1 本地化与国际化的概念 205

9.2 web应用的中文本地化 206

9.2.1 处理http请求数据编码 207

9.2.2 处理数据库数据编码 207

9.2.3 处理xml配置文件编码 207

9.2.4 处理响应结果的编码 208

9.3 java对i18n的支持 208

9.3.1 locale类 208

9.3.2 resourcebundle类 214

9.3.3 messageformat类和复合消息 214

9.4 struts框架对国际化的支持 216

9.4.1 创建struts的resource bundle 216

9.4.2 访问resource bundle 217

9.5 对helloapp应用实现国际化 220

9.5.1 对jsp文件的文本、图片和按钮进行国际化 220

9.5.2 创建临时中文资源文件 221

9.5.3 对临时资源文件进行编码转换 222

9.5.4 创建英文资源文件 223

9.5.5 采用servlet过滤器设置请求数据的字符编码 223

9.5.6 运行国际化的helloapp应用 225

9.6 异常处理的国际化 226

9.7 小结 226

第10章 validator验证框架 229

10.1 安装和配置validator框架 229

10.1.1 validator-rules.xml文件 229

10.1.2 validation.xml文件 233

10.1.3 validator插件 237

10.2 validator框架和actionform 238

10.3 validator框架和struts客户化标签 240

10.4 在netstore应用中使用validator框架 241

10.5 创建自定义的验证规则 245

10.6 在validator框架中使用javascript 247

10.7 validator框架的国际化 250

10.8 小结 251

第11章 异常处理 253

11.1 java异常处理 253

11.1.1 java异常 253

11.1.2 jvm的方法调用堆栈 254

11.1.3 异常处理对性能的影响 255

11.1.4 系统异常和应用异常 256

11.1.5 使用异常链 256

11.1.6 处理多样化异常 258

11.2 struts框架异常处理机制概述 260

11.3 struts框架异常处理机制的细节 261

11.3.1 java web容器处理异常的机制 261

11.3.2 actionservlet类处理异常的机制 261

11.3.3 requestprocessor类处理异常的机制 262

11.3.4 exceptionhandler类处理异常的机制 263

11.4 在struts应用中处理异常的各种方式 266

11.4.1 创建异常类 266

11.4.2 由java web容器捕获异常 269

11.4.3 以配置方式处理异常 271

11.4.4 以编程方式处理异常 277

11.5 小结 282

第12章 struts html标签库 283

12.1 用于生成基本的html元素的标签 283

12.1.1 [html:html]标签 288

12.1.2 [html:base]标签 288

12.1.3 [html:link]和[html:rewrite]标签 289

12.1.4 [html:img]标签 292

12.2 基本的表单标签 293

12.2.1 [html:form]标签 296

12.2.2 [html:text]标签 296

12.2.3 [html:cancel]标签 297

12.2.4 [html:reset]标签 298

12.2.5 [html:submit]标签 298

12.2.6 [html:hidden]标签 299

12.3 检查框和单选按钮标签 299

12.3.1 [html:checkbox]标签 304

12.3.2 [html:multibox]标签 305

12.3.3 [html:radio]标签 306

12.4 下拉列表和多选列表标签 307

12.4.1 [html:select]标签 311

12.4.2 [html:option]标签 312

12.4.3 [html:options]标签 313

12.4.4 [html:optionscollection]标签 314

12.5 在表单中上传文件标签 315

12.5.1 [html:file]标签 319

12.5.2 在actionform bean中设定formfile属性 319

12.5.3 在action类中处理文件上传 319

12.6 [html:errors]标签 320

12.6.1 错误消息的来源 324

12.6.2 格式化地显示错误消息 326

12.6.3 [html:errors]标签的用法 326

12.7 [html:messages]标签 328

12.8 小结 330

第13章 struts bean标签库 331

13.1 访问http请求信息或jsp隐含对象 331

13.1.1 [bean:header]标签 334

13.1.2 [bean:parameter]标签 334

13.1.3 [bean:cookie]标签 335

13.1.4 [bean:page]标签 336

13.2 访问web应用资源 337

13.2.1 [bean:message]标签 339

13.2.2 [bean:resource]标签 341

13.2.3 [bean:struts]标签 341

13.2.4 [bean:include]标签 342

13.3 定义或输出javabean 342

13.3.1 [bean:define]标签 344

13.3.2 [bean:size]标签 345

13.3.3 [bean:write]标签 346

13.4 小结 347

第14章 struts logic标签库 349

14.1 进行比较运算的logic标签 349

14.2 进行字符串匹配的logic标签 354

14.3 判断指定内容是否存在的logic标签 356

14.3.1 [logic:empty]和[logic:notempty]标签 359

14.3.2 [logic:present]和[logic:notpresent]标签 360

14.3.3 [logic:messagespresent]和[logic:messagesnotpresent]标签 361

14.4 进行循环遍历的logic标签 363

14.4.1 遍历集合 366

14.4.2 遍历map 367

14.4.3 设定被遍历的变量 369

14.5 进行请求转发或重定向的logic标签 369

14.5.1 [logic:forward]标签 369

14.5.2 [logic:redirect]标签 370

14.6 小结 370

第15章 struts nested标签库 373

15.1 [nested:nest]和[nested:writenesting]标签 373

15.2 [nested:root]标签 379

15.3 和其他标签库中的标签功能相同的nested标签 381

15.4 小结 382

第16章 tiles框架 383

16.1 采用基本的jsp语句创建复合式网页 383

16.2 采用jsp的include指令创建复合式网页 387

16.3 采用[tiles:insert]标签创建复合式网页 391

16.4 采用tiles模板创建复合式网页 394

16.5 采用tiles模板和tiles组件创建复合式网页 396

16.5.1 tiles组件的基本使用方法 397

16.5.2 通过struts action来调用tiles组件 399

16.5.3 tiles组件的组合 399

16.5.4 tiles组件的扩展 402

16.6 小结 403

第17章 struts与ejb组件 405

17.1 j2ee体系结构简介 405

17.2 创建ejb组件 406

17.2.1 编写remote接口 407

17.2.2 编写home接口 408

17.2.3 编写enterprise java bean类 408

17.3 在struts应用中访问ejb组件 413

17.3.1 创建业务代理实现类netstoreejbdelegate 413

17.3.2 运用ejbhomefactory模式 416

17.4 发布j2ee应用 419

17.4.1 在jboss-tomcat上部署ejb组件 419

17.4.2 在jboss-tomcat上部署web应用 421

17.4.3 在jboss-tomcat上部署j2ee应用 422

17.5 小结 424

第18章 struts与soap web服务 425

18.1 soap简介 425

18.2 建立apache axis环境 427

18.3 创建和发布soap服务 428

18.3.1 创建实现soap服务的java类 428

18.3.2 创建web服务发布描述文件 429

18.3.3 发布soap服务 432

18.4 在struts应用中访问soap服务 432

18.5 小结 438

第19章 struts与apache通用日志包 439

19.1 apache通用日志包概述 439

19.1.1 log接口 439

19.1.2 logfactory接口 441

19.2 常用的日志实现 441

19.2.1 nooplog日志器 441

19.2.2 simplelog日志器 442

19.2.3 log4j日志器 442

19.3 配置通用日志接口 443

19.3.1 准备jar文件 443

19.3.2 指定日志器 443

19.3.3 设置日志器的属性 444

19.4 配置log4j 444

19.4.1 配置log4j的一般步骤 444

19.4.2 log4j的配置样例 446

19.4.3 log4j对应用性能的影响 447

19.5 在struts应用中访问通用日志接口 447

19.5.1 在action类中访问通用日志接口 448

19.5.2 在jsp中访问通用日志接口 450

19.6 小结 454

第20章 用ant工具管理struts应用 455

20.1 web应用常用的开发目录结构 455

20.2 安装配置ant 455

20.3 创建build.xml文件 456

20.3.1 设置公共属性 462

20.3.2 设置classpath 463

20.3.3 定义help target 463

20.3.4 定义clean-all target 463

20.3.5 定义prepare target 464

20.3.6 定义compile target 464

20.3.7 定义build target 465

20.3.8 定义deploy target 466

20.3.9 定义javadoc target 466

20.4 运行ant 466

20.4.1 运行help target 466

20.4.2 运行deploy target 467

20.4.3 运行javadoc target 468

20.5 小结 468


第21章 用strutstestcase测试struts应用 469

21.1 strutstestcase简介 469

21.2 制订单元测试用例 469

21.3 创建strutstestcase测试类 470

21.4 用ant工具运行测试程序 471

21.4.1 准备必要的jar文件 471

21.4.2 在build.xml文件中定义test target 471

21.4.3 运行测试程序 472

21.5 创建包含多个单元测试用例的测试类 473

21.6 小结 475

附录a struts1.1的uml类框图 476

附录b struts资源 477

b.1 struts邮件列表 477

b.2 struts资源web站点 477

b.3 tiles标签库站点 477

b.4 nested 标签库站点 478

b.5 struts gui工具 478

b.6 easy struts 工程 478

附录c 发布和运行addressbook应用 479

c.1 发布addressbook应用 479

c.2 运行addressbook应用 479

附录d 发布和运行netstore应用 482

d.1 运行netstore所需的软件 482

d.2 netstore应用的目录结构 483

d.3 安装netstore数据库 484

d.4 发布netstore应用 484

d.4.1 在工作模式1下发布netstore应用 484

d.4.2 在工作模式2下发布netstore应用 485

d.4.3 在工作模式3下发布netstore应用 485

d.4.4 在工作模式4下发布netstore应用 486

d.4.5 在工作模式5下发布netstore应用 486

d.5 运行netstore应用 487

附录e 编译本书的java web样例 491

附录f struts 1.2 api的新特征 492

 

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

精通Struts:基于MVC的Java Web设计与开发
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon