新書推薦:
《
海外中国研究·王羲之:六朝贵族的世界(艺术系列)
》
售價:NT$
811.0
《
唐宋绘画史 全彩插图版
》
售價:NT$
449.0
《
“御容”与真相:近代中国视觉文化转型(1840-1920)
》
售價:NT$
505.0
《
鸣沙丛书·大风起兮:地方视野和政治变迁中的“五四”(1911~1927)
》
售價:NT$
454.0
《
海洋、岛屿和革命:当南方遭遇帝国(文明的另一种声音)
》
售價:NT$
485.0
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
英雄之旅:把人生活成一个好故事
》
售價:NT$
398.0
《
分析性一体的涌现:进入精神分析的核心
》
售價:NT$
556.0
|
內容簡介: |
Struts2是一款真正意义上按照MVC架构模式搭建的Web开发框架。本书全面讲述Struts2开发框架的知识,包括Struts2概述、Struts2配置详解、Struts2拦截器、类型转换、输入校验、Struts2国际化与异常处理、OGNL、Struts2标签库、Struts2数据库的应用、文件的上传与下载、避免表单重复提交与等待页面以及Struts2与其他流行框架的整合,最后以一个Spring+Struts2+Hibernate三大框架整合的实例,综合地介绍Struts2在实际应用中的使用。本书光盘提供了全程配音视频文件和实例源代码。
本书适合大专院校在校生、网站开发人员、Struts2学习和开发人员以及编程爱好者学习和参考。
|
目錄:
|
第1章 Struts 2概述
1.1 MVC思想概述
1.1.1 MVC设计模式
1.1.2 MVC的优点
1.1.3 Model 1和Model 2开发模式
1.2 Struts 2体系介绍
1.2.1 核心控制器
1.2.2 业务处理器Action
1.2.3 Struts 2配置文件
1.2.4 Struts 2的控制器组件
1.2.5 Struts 2的标签库
1.3 搭建Struts 2开发环境
1.3.1 安装配置JDK
1.3.2 下载安装Tomcat
1.3.3 下载安装Struts 2
1.3.4 使用MyEclipse开发工具
1.4 Struts 2应用示例
1.4.1 配置web.xml文件
1.4.2 Action业务控制器
1.4.3 struts.xml配置文件
1.4.4 添加视图文件完成应用
1.4.5 运行实例
1.5 在Struts 2中使用POJO
1.6 项目案例:编写简单的登录验证
系统
1.7 习题
1.8 实践疑难解答
1.8.1 Struts 2接收日期格式赋值
错误
1.8.2 关于Struts 2标签的一个问题
第2章 Struts 2配置详解
2.1 Struts 2的配置文件
2.1.1 web.xml
2.1.2 struts.xml
2.1.3 struts-default.xml
2.1.4 struts.properties
2.1.5 静态内容
2.2 struts.xml配置详解
2.2.1 Bean配置
2.2.2 常量配置
2.2.3 包配置
2.2.4 命名空间配置
2.2.5 包含配置
2.2.6 拦截器配置
2.3 配置Action
2.3.1 实现Action类
2.3.2 Action间接访问Servlet API
2.3.3 Action直接访问Servlet API
2.3.4 配置Action
2.3.5 动态方法调用
2.3.6 为Action元素指定method
属性
2.3.7 使用通配符映射
2.3.8 默认Action
2.4 配置Result
2.4.1 结果映射
2.4.2 结果类型
2.4.3 dispatcher结果类型
2.4.4 redirect结果类型
2.4.5 redirectAction结果类型
2.4.6 chain结果类型
2.4.7 plainText结果类型
2.4.8 通配符动态配置Result
2.4.9 OGNL动态配置Result
2.5 使用注解配置Action
2.5.1 与Action配置相关的注解
2.5.2 使用注解配置Action的注意
事项
2.6 项目案例:实现用户的注册功能
2.7 习题
2.8 实践疑难解答
2.8.1 通配符的使用效率
2.8.2 配置struts.xml文件时,class
路径错误
第3章 Struts 2的拦截器
3.1 拦截器简介
3.2 Struts 2拦截器
3.2.1 配置拦截器
3.2.2 使用拦截器
3.2.3 默认拦截器
3.3 自定义拦截器
3.3.1 自定义拦截器类
3.3.2 使用自定义拦截器
3.4 深入拦截器
3.4.1 方法过滤
3.4.2 拦截器的执行顺序
3.4.3 拦截结果监听器
3.4.4 覆盖拦截器栈中拦截器参数
3.5 Struts 2框架的系统拦截器
3.5.1 系统拦截器
3.5.2 timer拦截器实例
3.6 项目案例:实现文字过滤功能
3.7 习题
3.8 实践疑难解答
3.8.1 为什么要用拦截器的问题
3.8.2 设置默认拦截器的问题
3.8.3 Action方法的执行和拦截器
关系的问题
3.8.4 拦截器的错误信息如何显示
在页面上
第4章 类型转换
4.1 传统的类型转换
4.2 类型转换器
4.2.1 类型转换器介绍
4.2.2 编写类型转换器
4.3 自定义类型转换器
4.3.1 基于OGNL的类型转换器
4.3.2 基于Struts 2的类型转换器
4.3.3 注册自定义类型转换器
4.3.4 数组属性类型转换器
4.3.5 集合属性类型转换器
4.4 使用Struts 2的类型转换
4.4.1 Struts 2系统内建的类型
转换器
4.4.2 null属性的处理
4.4.3 使用OGNL表达式
4.4.4 使用集合类型属性
4.4.5 使用Set类型属性
4.5 类型转换中的异常处理
4.5.1 类型转换异常拦截器
4.5.2 改进类型转换异常显示信息
4.5.3 处理复合类型转换异常
4.6 项目案例:使用List属性同时处理多
条注册数据
4.7 习题
4.8 实践疑难解答
4.8.1 Struts 2 Date类型转换问题
4.8.2 Struts2的自动类型转换出错
第5章 Struts 2的输入校验
5.1 输入校验概述
5.1.1 输入校验的必要性
5.1.2 客户端和服务器端校验
5.2 使用validate进行输入校验
5.2.1 validate方法输入校验
5.2.2 validateXxx方法输入校验
5.2.3 Struts 2的输入校验流程
5.3 基本输入校验
5.3.1 定义校验规则
5.3.2 校验器配置风格
5.3.3 输入校验的国际化信息
5.3.4 校验的搜索顺序
5.4 Struts 2框架的校验器
5.4.1 必填校验器
5.4.2 必填字符串校验器
5.4.3 字符串长度校验器
5.4.4 整数校验器
5.4.5 日期校验器
5.4.6 转换校验器
5.4.7 邮件地址校验器
5.4.8 网址校验器
5.4.9 表达式校验器
5.4.10 字段表达式校验器
5.4.11 正则表达式校验器
5.4.12 visitor校验器
5.5 自定义校验器
5.6 项目案例:学生信息录入
5.7 习题
5.8 实践疑难解答
5.8.1 使用转换校验器抛出异常
5.8.2 Struts 2如何显示验证出错
信息
5.8.3 Struts 2中校验方法的使用
第6章 Struts 2国际化与异常处理
6.1 Java国际化
6.1.1 Java对国际化的支持
6.1.2 Java支持的语言和区域
6.1.3 使用资源文件
6.1.4 使用类文件代替资源文件
6.1.5 MessageFormat类
6.2 Struts 2国际化
6.2.1 Struts 2对国际化的支持
6.2.2 使用占位符
6.2.3 包范围资源文件
6.2.4 Action范围资源文件
6.2.5 临时资源文件
6.2.6 加载资源文件的顺序
6.3 动态访问国际化资源文件
6.4. Struts 2异常处理
6.4.1 传统异常处理方式
6.4.2 Struts 2异常处理机制
6.4.3 配置异常处理
6.4.4 异常处理实例
6.5 项目案例:实现注册系统的国际化
功能
6.6 习题
6.7 实践疑难解答
6.7.1 Struts 2国际化中文乱码解决
问题
6.7.2 使用Struts 2国际化标签的
错误问题
第7章 OGNL
7.1 OGNL基础
7.1.1 OGNL三要素
7.1.2 OGNL表达式
7.1.3 对集合的操作
7.2 lambda表达式
7.3 Struts 2的OGNL
7.4 项目案例:获取员工信息
7.5 习题
7.6 实践疑难解答
7.6.1 OGNL表达式问题
7.6.2 Struts 2的OGNL调用Action
中的方法
7.6.3 #、%、$在页面表达式的
区别
第8章 Struts 2标签库
8.1 Struts 2的标签库概述
8.1.1 标签库简介
8.1.2 Struts 2的标签分类
8.2 控制标签
8.2.1 ifelseifelse标签
8.2.2 iterator标签
8.2.3 append标签
8.2.4 generator标签
8.2.5 merge标签
8.2.6 subset标签
8.2.7 sort标签
8.3 数据标签
8.3.1 action标签
8.3.2 bean标签
8.3.3 date标签
8.3.4 debug标签
8.3.5 include标签
8.3.6 param标签
8.3.7 push标签
8.3.8 set标签
8.3.9 url标签
8.3.10 property标签
8.4 主题与模板
8.4.1 主题
8.4.2 模板
8.4.3 使用主题模板
8.5 表单标签
8.5.1 表单标签通用属性
8.5.2 checkboxlist标签
8.5.3 combobox标签
8.5.4 doubleselect标签
8.5.5 datetimepicker标签
8.5.6 head标签
8.5.7 file标签
8.5.8 hidden标签
8.5.9 select标签
8.5.10 radio标签
8.5.11 optgroup标签
8.5.12 textfield、password和textarea
标签
8.5.13 token标签
8.5.14 updownselect标签
8.5.15 optiontransferselect标签
8.6 非表单标签
8.6.1 actionerror和actionmessage
标签
8.6.2 component标签
8.6.3 tree和treenode标签
8.7 项目案例:编写一个用户注册页面
8.8 习题
8.9 实践疑难解答
8.9.1 表单标签hidden的使用问题
8.9.2 Struts 2s:iterator标签问题
第9章 Struts 2数据库应用
9.1 访问MySQL数据库
9.1.1 创建一个数据库
9.1.2 建立JDBC连接
9.2 使用Tomcat数据源
9.3 Struts 2数据分页
9.4 项目案例:商品的增删改查
9.4.1 通用模块的实现
9.4.2 添加商品
9.4.3 修改商品
9.4.4 删除商品
9.5 习题
9.6 实践疑难解答
9.6.1 MySQL自增列的设置问题
9.6.2 MySQL代码中关键字的
大小写问题
9.6.3 MySQL中limit的用法
第10章 文件上传与下载
10.1 文件上传
10.1.1 基于表单的文件上传
10.1.2 手动上传
10.1.3 Struts 2对文件上传的支持
10.1.4 在Struts 2中实现文件上传
10.1.5 实现上传文件过滤
10.2 多个文件同时上传
10.2.1 使用数组同时上传多个
文件
10.2.2 使用List同时上传多个
文件
10.3 文件下载
10.3.1 使用Struts 2控制文件下载
10.3.2 下载权限控制
10.4 项目案例:实现多个文件的上传
功能
10.5 习题
10.6 实践疑难解答
10.6.1 Struts2文件上传类型问题
10.6.2 Struts 2判断上传文件大小
问题
第11章 避免表单重复提交与等待
页面
11.1 表单重复提交原因
11.2 Struts 2实现方式
11.2.1 使用token标签
11.2.2 使用tokenSession拦截器
11.3 显示等待页面
11.4 项目案例:编写简单的登录系统
11.5 习题
11.6 实践疑难解答
11.6.1 token标签的问题
11.6.2 tokenSession拦截器的问题
11.6.3 显示等待页面错误
第12章 整合Spring
12.1 Spring概述
12.1.1 Spring的起源及优点
12.1.2 Spring的核心
12.1.3 下载安装Spring
12.1.4 使用Spring的IoC容器
12.2 Struts 2整合Spring
12.2.1 整合原理
12.2.2 整合步骤
12.2.3 Struts 2整合Spring示例
12.3 项目案例:编写简单的登录验证
系统
12.4 习题
12.5 实践疑难解答
12.5.1 访问Action时请求参数为
null
12.5.2 Struts 2整合Spring概念不
清楚
第13章 整合Hibernate
13.1 Hibernate简介
13.1.1 Hibernate的优缺点
13.1.2 Hibernate API简介
13.1.3 Hibernate核心接口
13.2 Struts 2整合Hibernate
13.2.1 下载安装Hibernate
13.2.2 Struts 2与Hibernate的整合
方案
13.2.3 功能设计与数据库设计
13.2.4 Hibernate映射对象到
数据库
13.2.5 hibernate.cfg.xml配置文件
13.2.6 构建SessionFactory
13.2.7 数据库操作DAO
13.2.8 业务控制Action
13.2.9 struts.xml配置文件
13.2.10 视图文件
13.3 习题
13.4 实践疑难解答
13.4.1 使用Hibernate更改指定
属性
13.4.2 Hibernate中常用的主键生成
策略有哪几种
13.4.3 Hibernate调用createQuery
方法的值的类型问题
第14章 整合其他框架技术
14.1 整合JSF
14.1.1 整合原理
14.1.2 整合步骤
14.1.3 整合实例
14.2 整合SiteMesh
14.2.1 SiteMesh简介
14.2.2 下载安装SiteMesh
14.2.3 SiteMesh的简单应用
14.2.4 更复杂的装饰器页面
14.2.5 Struts 2中使用SiteMesh
14.3 整合FreeMarker
14.3.1 FreeMarker简介
14.3.2 FreeMarker的简单应用
14.3.3 FreeMarker常用指令
14.3.4 Struts 2中使用FreeMarker
14.4 整合Tiles
14.4.1 Tiles简介
14.4.2 下载安装Tiles
14.4.3 Tiles的简单应用
14.4.4 Struts 2中使用Tiles
14.5 整合JFreeChart
14.5.1 JFreeChart简介
14.5.2 下载安装JFreeChart
14.5.3 JFreeChart的简单应用
14.5.4 Struts 2中使用JFreeChart
14.6 项目案例:开发在线投票系统
14.7 习题
14.8 实践疑难解答
14.8.1 JSF的配置问题
14.8.2 JAR文件的版本问题
第15章 人事管理系统
15.1 系统概述
15.1.1 需求分析
15.1.2 系统用例图
15.1.3 系统设计
15.2 数据库设计
15.3 搭建Struts 2+Spring+Hibernate
开发环境
15.4 系统实现
15.4.1 通用模块的实现
15.4.2 部门管理
15.4.3 员工管理
15.4.4 招聘管理
|
內容試閱:
|
Struts 1是一个非常成功的MVC框架,对于项目的开发有很大的帮助,但是,随着时间的流逝以及技术的进步,Struts 1的缺陷也逐渐显露出来,制约了Struts 1的继续发展。
对于Struts 1框架而言,由于和JSPServlet耦合非常紧密,导致出现了一些严重的问题,主要体现在支持视图技术单一、难于测试、庞大的配置文件和大量的ActionForm类这几个方面,给项目开发的管理维护带来了困难。于是,大量的开发人员、软件公司开始选择更好的MVC解决方案,这个时候Struts 2应运而生,Struts 2整合了两个优秀的框架,Struts 1和WebWork,这两个框架都是非常成熟优秀的MVC框架,这就保证了Struts 2作为实际开发框架的成熟性。Struts 2保留了Struts 1的简单易用性,并且充分利用了WebWork的拦截器机制,Struts 2发展成为一个具有高度可扩展性的框架。
本书内容
本书全面介绍Struts 2的框架,包括Struts 2框架的配置文件、Struts 2框架的拦截器、Struts 2框架强大的标签库以及Struts 2框架与其他框架的整合。
本书共15章,各章内容如下。
第1章:Struts 2概述。主要讲述MVC设计模式以及Struts 2的框架架构、标签库、开发环境以及基本配置,重点介绍Struts 2的Action配置。
第2章:Struts 2配置详解。本章主要介绍Struts 2的配置文件,讲述Struts 2在web.xml文件中的配置、struts.xml文件的配置、Action的配置以及它们的注解形式,还介绍了Action对Servlet API的访问方式和Result结果的几种形式。
第3章:Struts 2的拦截器。主要介绍拦截器的工作原理及其功能、拦截器的配置和使用以及自定义拦截器。
第4章:类型转换。主要介绍类型转换器的编写、自定义类型转换器以及内置类型转换器、还介绍了类型转换中的异常处理以及类型转换的注解。
第5章:Struts 2的输入校验。主要介绍几种输入校验的方法以及输入校验的流程,重点介绍常用校验器、校验器的配置和自定义校验器。
第6章:Struts 2国际化与异常处理。主要介绍国际化的机制及其配置应用,还介绍了异常处理的机制和它的应用以及声明。
第7章:OGNL。本章介绍OGNL的三要素、表达式的使用和它对集合的操作,讲述了lambda表达式的使用以及Struts 2对OGNL表达式的增强。
第8章:Struts 2标签库。本章介绍Struts 2标签库的使用,其中重点介绍控制标签、数据标签、主题概念标签以及表单标签。
第9章:Struts 2数据库应用。本章介绍MySQL数据库的创建、JDBC数据库的连接和Tomcat数据源的使用,也重点介绍了分页查询和对数据库的操作。
第10章:文件上传与下载。本章介绍文件上传与下载,主要介绍Struts 2对文件上传和下载的支持、上传文件的过滤、多个文件的上传和下载权限的控制。
第11章:避免表单重复提交与等待页面。本章主要介绍TokenInterceptor、TokenSessionStoreInterceptor和ExecuteAndWaitInterceptor这3个拦截器的使用。
第12章:整合Spring。本章介绍Spring框架以及它的优点,并且介绍了相关的IoC和DI的概念,重点介绍了Struts 2整合Spring的原理和流程。
第13章:整合Hibernate。本章介绍Hibernate框架和该框架的使用、Hibernate映射和配置文件、Hibernate对数据库的操作。以案例的形式讲述了Struts 2与Hibernate的整合。
第14章:整合其他框架技术。本章讲述Struts 2与JSF框架、siteMesh框架、FreeMarker框架、Tiles框架的整合,并且介绍了JFreeChart框架。
第15章:人事管理系统。本章通过一个Web项目讲述Spring、Hibernate和Struts 2三大框架的整合,并且详细讲述了各个模块的实现过程和运行结果。
本书特色
本书采用大量的实例进行讲解,力求通过实际操作使读者轻松掌握Struts 2框架技术的使用。本书每章后面都有精选的习题供读者巩固所学知识,每个章节末尾都有实践疑难解答,在这个模块中收集了每章中的重点、难点以及易出错点,以问答的形式告诉读者,使读者更轻松地掌握这些知识。本书难度适中,内容由浅而深,实用性强,覆盖面广,条理清晰。
q知识面全 本书全面地介绍了Struts 2框架的各知识点,具有很强的系统性。
q示例典型,应用广泛 作者精心挑选了大量示例程序,它们都是根据作者在实际开发中的经验总结而来的,涵盖了实际开发中出现的各种问题。而且有些程序可以直接在项目中使用,无需二次开发。
q快速掌握 注重技术原理和实际应用的高度融合,通过循序渐进的内容组织,帮助读者快速掌握和应用Struts 2框架技术。
q随书光盘 本书为实例配备了视频教学文件,读者可以通过视频文件更加直观地学习Struts 2框架知识。
q网站技术支持 读者在学习或者工作的过程中,如果遇到实际问题,可以直接登录www.itzcn.com与我们取得联系,我们会在第一时间内给予帮助。
读者对象
本书具有知识全面、实例精彩、指导性强的特点,力求以全面的知识及丰富的实例来指导读者透彻地学习Struts 2框架和相关方面的知识。本书可以作为Struts 2框架的入门书籍,也可以帮助中级读者提高技能,对高级读者也有一定的启发意义。
本书适合以下人员阅读学习。
q系统开发人员。
q系统维护人员。
qStruts 2初学者。
qMVC框架编程人员。
q各大中专院校的在校学生和相关授课老师。
除了封面署名人员之外,参与本书编写的人员还有马海军、李海庆、陶丽、王咏梅、康显丽、郝军启、朱俊成、宋强、孙洪叶、袁江涛、张东平、吴鹏、王新伟、刘青凤、汤莉、冀明、王超英、王丹花、闫琰、张丽莉、李卫平、王慧、牛红惠、丁国庆、黄锦刚、李旎、王中行、李志国等。在编写过程中难免会有漏洞,欢迎读者通过我们的网站www.itzcn.com与我们联系,帮助我们改正提高。
|
|