内容简介
第1篇Java Web基础篇
第1章Servlet开发
1.1用Eclipse开发第一个Servlet程序
1.1.1建立Web工程
1.1.2编写Servlet程序
1.1.3运行Servlet
1.1.4调试Servlet
1.2手工编写和发布Web程序
1.2.1编写web.xml
1.2.2使用JAR进行打包
1.2.3发布到指定的目录
1.3配置数据库连接池
1.4 Servlet的原理和实现
1.4.1 Servlet程序的层次关系
1.4.2 Servlet的编写过程
1.4.3 Servlet的执行过程
1.4.4显示服务端图像
1.5使用HttpServletResponse产生响应消息
1.5.1产生状态响应码
1.5.2设置响应消息头
1.5.3验证响应消息头设置情况
1.5.4产生响应正文
1.5.5用sendRedirect方法实现请求重定向
1.5.6用include方法实现资源包含
1.5.7用forward方法实现请求转发
1.6使用 HttpServletRequest获得请求消息
1.6.1获取请求行消息
1.6.2获取网络连接消息
1.6.3获取请求头消息
1.7处理Cookie
1.7.1 Cookie类
1.7.2 Cookie的功能演示
1.8处理Session
1.8.1 HttpSession接口中的方法
1.8.2 HttpServletRequest接口中的Session方法
1.8.3通过Cookie跟踪Session
1.8.4通过重写URL跟踪Session
1.9本章小结
第2章JSP入门
2.1用Eclipse开发第一个JSP程序
2.1.1建立一个 JSP程序
2.1.2调试JSP程序
2.1.3改变JSP的访问路径
2.1.4改变JSP的扩展名
2.1.5手动发布JSP
2.2 JSP运行原理
2.2.1 Tomcat如何处理JSP页
2.2.2分析由JSP生成的Servlet代码
2.3 JSP基本语法
2.3.1 JSP表达式
2.3.2在JSP中嵌入Java代码
2.3.3 JSP声明
2.3.4 JSP表达式语言(EL)
2.3.5 JSP代码中的注释
2.4 JSP指令
2.4.1 JSP指令简介
2.4.2 page指令
2.4.3 include指令
2.5内置对象
2.5.1 out对象
2.5.2 pageContext对象
2.5.3其他JSP内置对象
2.6 JSP标签
2.6.1 <jsp:include>标签
2.6.2 <jsp:forward>标签
2.6.3 <jsp:param>标签
2.6.4 <jsp:useBean>标签
2.6.5 <jsp:setProperty>标签
2.6.6 <jsp:getProperty>标签
2.7本章小结
第3章 表达式语言
3.1 EL概述
3.2 EL入门
3.2.1在 JSP页面中使用EL表达式
3.2.2在标签中使用EL表达式
3.2.3在web.xml中禁用EL表达式
3.3 EL的内置对象
3.3.1内置对象与域对象
3.3.2 pageContext对象
3.3.3 param和paramValues对象
3.3.4 header和headerValues对象
3.3.5 cookie对象
3.3.6 initParam对象
3.4 EL的基本语法
3.4.1标识符
3.4.2保留字
3.4.3常量
3.4.4变量
3.4.5枚举类型
3.5 EL中的运算符
3.5.1方括号和点运算符
3.5.2算术运算符
3.5.3关系运算符
3.5.4逻辑运算符
3.5.5 empty运算符
3.5.6条件运算符
3.5.7圆括号运算符
3.5.8运算符的优先级
3.6 EL自定义函数
3.6.1 EL自定义函数简介
3.6.2编写EL自定义函数的静态Java方法
3.6.3配置EL自定义函数
3.6.4使用EL自定义函数
3.7本章小结
第4章 国际化
4.1国际化与本地化概述
4.2与国际化相关的Java类
4.2.1 Locale类
4.2.2获得JD K支持的所有本地信息
4.2.3 ResourceBundle类
4.2.4处理中文资源文件的工具
4.2.5获得国际化资源信息
4.2.6从Java类中获得国际化资源信息
4.2.7 DateFormat类
4.2.8 SimpleDateFormat类
4.2.9格式化Date对象
4.2.10解析日期/时间字符串
4.2.11 NumberFormat类
4.2.12 DecimalFormat类
4.2.13格式化数值
4.2.14解析表示数值的字符串
4.2.15MessageFormat类
4.2.16格式化带占位符的国际化资源信息
4.2.17动态设置占位符的数据类型和显示模式
4.3开发国际化的Web程序
4.3.1 Web程序国际化的原理
4.3.2编写国际化的Web程序
4.4本章小结
第5章JSp标准标签库(一)
5.1标签库的组成部分
5.2建立JSTL的开发环境
5.3核心标签库
5.3.1 <c:out>标签
5.3.2 <c:set>标签
5.3.3 <c:remove>标签
5.3.4 <c:catch>标签
5.3.5 <c:if>标签
5.3.6 <c:choose>、 <c:when>和<c:otherwise>标签
5.3.7 <c:forEach>标签
5.3.8 <c:forTokens>标签
5.3.9 <c:param>标签
5.3.10 <c:url>标签
5.3.11 <c:redirect>标签
5.3.12 <c:import>标签
5.4国际化标签库
5.4.1 <fmt:setLocale>标签
5.4.2 <fmt:bundle>标签
5.4.3 <fmt:setBundle>标签
5.4.4 <fmt:message>标签
5.4.5 <fmt:param>标签
5.4.6 <fmt:requestEncoding>标签
5.4.7 <fmt:timeZone>标签
5.4.8 <fmt:setTimeZone>标签
5.4.9 <fmt:formatNumber>标签
5.4.10 <fmt:parseNumber>标签
5.4.11 <fmt:formatDate>标签
5.4.12 <fmt:parseDate>标签
5.5本章小结
第6章JSP标准标签库(二)
6.1数据库标签库
6.1.1 <sql:setDataSource>标签
6.1.2 <sql:query>标签
6.1.3 <sql:update>标签
6.1.4 <sql: transaction>标签
6.1.5 <sql:param>标签
6.1.6 <sql:dateParam>标签
6.2 XML标签库
6.2.1 <x:parse>标签
6.2.2使用Filter过滤XML文档
6.2.3 <x:out>标签
6.2.4 < x:set>标签
6.2.5 XPath表达式的条件判断
6.2.6 <x:if>标签
6.2.7 <x:choose>、 <x:when>和<x:otherwise>标签
6.2.8 <x:forEach>标签
6.2.9 <x:transform>标签
6.2.10 <x:param>标签
6.3 JSTL自定义函数
6.3.1 fn:contains函数
6.3.2 fn: containsIgnoreCase函数
6.3.3 fn:startsWith函数
6.3.4 fn:endsWith函数
6.3.5 fn:escapeXml函数
6.3.6 fn:indexOf函数
6.3.7 fn:split函数
6.3.8 fn:join函数
6.3.9 fn:length函数
6.3.10 fn:replace函数
6.3.11 fn:substring函数
6.3.12 fn:substringAfter函数
6.3.13 fn:substringBefore函数
6.3.14 fn:toLowerCase函数
6.3.15fn:toUpperCase函数
6.3.16 fn:trim函数
6.4本章小结
第7章 自定义标签的开发与应用
7.1自定义标签基础
7.1.1编写输出随机数的标签
7.1.2自定义标签能做什么
7.1.3自定义标签API
7.2实现基本的自定义标签
7.2.1 Tag接口
7.2.2标签类中方法的调用顺序
7.2.3控制是否执行标签体
7.2.4控制是否执行标签后面的内容
7.2.5限定自定义标签的父标签
7.3自定义标签的属性
7.3.1定义标签属性
7.3.2编写数学运算标签
7.3.3动态属性值
7.3.4标签的动态属性
7.3.5使用动态属性生成不同风格的列表框
7.4迭代标签
7.4.1 IterationTag接口
7.4.2编写迭代集合的标签
7.5处理标签体内容
7.5.1 BodyTag接口
7.5.2 BodyContent类
7.5.3编写将URL转换成a元素的标签
7.5.4编写将文本内容转换成表格的标签
7.6标签体的类型
7.7在自定义标签中使用Java变量
7.7.1在TLD文件中定义Java变量
7.7.2 TLD文件中的Java变量详解
7.7.3 JSP引擎如何创建声明和使用Java变量的语句
7.7.4使用TagExtraInfo类定义Java变量
7.7.5编写使用Base64格式编码和解码的标签
7.8本章小结
第2篇SSH整合技术篇
第8章Struts 2入门
8.1 Struts 2简介
8.1.1 Struts 2的MVC模式
8.1.2 Struts 2的下载和安装
8.2编写一个简单的Struts 2程序
8.3模型驱动
8.4 Struts 2中的配置文件
8.4.1 web.xml文件的配置
8.4.2 struts.xml文件的配置
8.4.3 struts.properties文件的配置
8.4.4使用DTD
8.5 Struts 2的配置标签
8.5.1 <bean>标签
8.5.2 <constant>标签
8.5.3 <include>标签
8.5.4 <package>标签
8.5.5 struts.xml文件中的命名空间
8.5.6配置拦截器
8.6本章小结
第9章Struts 2中的常用技术
9.1常用类和接口
9.1.1 getter和setter方法
9.1.2 Action接口
9.1.3 ActionSupport类
9.1.4通过ActionContext访问 Servlet API
9.1.5通过感知拦截器访问Servlet API
9.1.6动态方法处理多个提交请求
9.1.7通过method属性处理多个提交请求
9.1.8通配符
9.2结果(Result)
9.2.1配置Result
9.2.2 Result类型
9.2.3用通配符指定结果
9.2.4用请求参数指定结果
9.3模型驱动
9.3.1 ModelDriven概述
9.3.2使用模型驱动改进登录程序
9.4异常处理
9.4.1处理异常的原理
9.4.2实例:登录系统的异常处理
9.5本章小结
第10章Struts 2的类型转换
10.1类型转换简介
10.1.1客户端和服务端之间的数据转换
10.1.2传统的类型转换
10.2使用Struts 2类型转换器
10.2.1内置类型转换器
10.2.2 OGNL类型转换器
10.2.3配置全局类型转换器
10.2.4 Struts类型转换器
10.2.5数组类型转换器
10.2.6集合类型转换器
10.3处理Collection和Map映射
10.3.1指定集合元素的类型
10.3.2 Set和索引属性
10.4本章小结
第11章 拦截器
11.1拦截器基础
11.1.1拦截器简介
11.1.2配置拦截器
11.1.3使用拦截器
11.1.4设置拦截器参数
11.1.5默认拦截器
11.2 Struts 2的内置拦截器
11.2.1内置拦截器简介
11.2.2 alias拦截器
11.2.3 exception拦截器
11.3自定义拦截器
11.3.1编写拦截器类
11.3.2配置自定义拦截器
11.4拦截器的高级技术
11.4.1过滤指定的方法
11.4.2拦截器执行顺序
11.4.3拦截器结果监听器
11.5本章小结
第12章 输入校验
12.1使用validate方法进行数据校验
12.1.1 validate方法校验数据的原理
12.1.2用validate方法进行输入校验
12.1.3使用validateXxx方法进行输入校验
12.1.4 Struts 2的输入校验流程
12.2使用Validation框架进行数据校验
12.2.1使用Validation框架进行服务端校验
12.2.2字段和非字段校验器
12.2.3国际化错误提示信息
12.2.4校验文件的命名规则
12.3 validation框架的内置校验器
12.3.1 conversion校验器
12.3.2 date校验器
12.3.3 double校验器
12.3.4 email校验器
12.3.5 expression校验器
12.3.6 fieldexpression校验器
12.3.7 int校验器
12.3.8 regex校验器
12.3.9 required校验器
12.3.10 requiredstring校验器
12.3.11 stringlength校验器
12.3.12 url校验器
12.4本章小结
第13章Strtus 2的常用标签
13.1控制标签
13.1.1 if/elseif/else标签
13.1.2 iterator标签
13.1.3 append标签
13.2数据标签
13.2.1 action标签
13.2.2 bean标签
13.2.3 include标签
13.2.4 param标签
13.2.5 property标签
13.2.6 set标签
13.3表单标签
13.3.1 form、 submit和reset标签
13.3.2 checkboxlist标签
13.3.3 combobox标签
13.3.4 select标签
13.3.5 radio标签
13.4本章小结
第14章Hibernate入门
14.1 Hibernate概述
14.2编写第一个Hibernate程序
14.2.1开发Hibernate程序的步骤
14.2.2建立数据表
14.2.3建立Hibernate配置文件
14.2.4编写会话工厂类
14.2.5编写实体Bean
14.2.6建立映射文件
14.2.7编写Action类
14.2.8编写JSP页面
14.3配置Hibernate
14.3.1用XML文件配置Hibernate
14.3.2用属性文件配置Hibernate
14.3.3用编程的方式配置Hibernate
14.3.4 Hibernate框架的配置属性
14.3.5 SQL方言
14.3.6使用JNDI数据源
14.3.7配置映射文件
14.4本章小结
第15章Hibernate会话与关系对象映射
15.1会话基础
15.1.1对象持久化
15.1.2持久化对象的关系
15.1.3装载持久化对象
15.1.4更新持久化对象
15.1.5删除持久化对象
15.2建立关系对象映射
15.2.1映射主键
15.2.2映射普通属性
15.2.3组件映射
15.2.4多对一单向关联关系
15.2.5一对多的双向关联关系
15.2.6基于外键的一对一的关系映射
15.2.7基于主键的一对一的关系映射
15.3本章小结
第16章Hibernate的高级技术
16.1标准查询
16.1.1约束条件
16.1.2分页显示数据
16.1.3获得一个持久化对象
16.1.4使用Order类对数据进行排序
16.1.5关联多个实体Bean
16.1.6聚合与分组
16.1.7使用QBE
16.2 HQL详解
16.2.1 HQL入门
16.2.2 from子句
16.2.3 select子句
16.2.4 where子句
16.2.5命名参数
16.2.6 分页显示数据
16.2.7排序和分组
16.2.8关联查询
16.2.9聚合函数
16.2.10 update和delete语句
16.2.11 insert语句
16.2.12命名查询
16.3本章小结
第17章整合Struts 2、 Spring和Hibernate
17.1整合Struts 2与Hibernate
17.2 Spring概述
17.3 Spring开发入门
17.3.1 Spring的下载和安装
17.3.2 IoC模式概述
17.3.3关于Spring的一个简单的例子
17.4整合Struts 2、 Spring和Hibernate
17.4.1装配数据访问层
17.4.2装配业务逻辑层
17.4.3使用Struts 2的Spring插件
17.5本章小结
第3篇ExtJS框架篇
第18章ExtJS入门
18.1 ExtJS基础
18.1.1下载和安装ExtJS
18.1.2编写第一个ExtJS程序
18.1.3 ExtJS的国际化
18.1.4查看ExtJS API
18.2 ExtJS的事件
18.2.1注册和删除事件
18.2.2 Observable类
18.3 ExtJS中的核心组件
18.3.1 Ext.Component组件
18.3.2 Ext.BoxComponent组件
18.3.3 Ext.Container组件
18.3.4 Ext.Button组件
18.3.5 Ext.Panel组件
18.3.6 Ext.Window组件
18.4本章小结
第19章ExtJS的常用组件
19.1对话框组件
19.1.1提醒对话框
19.1.2确认对话框
19.1.3输入对话框
19.1.4等待对话框
19.1.5进度对话框
19.1.6带图像的对话框
19.2表单组件
19.2.1 Ext.form.FormPanel组件
19.2.2 Ext.form.TextField组件
19.2.3 Ext.form.TextArea组件
19.2.4 Ext.form.DateField组件
19.2.5 Ext.form.TimeField组件
19.2.6 Ext.form.ComboBox组件
19.2.7 Ext.form.TriggerField组件
19.3布局组件
19.3.1 FormLayout组件
19.3.2 ColumnLayout组件
19.3.3 Ext.form.FieldSet组件
19.4本章小结
第20章 表格组件
20.1表格基础
20.1.1编写第一个表格程序
20.1.2设置表格的列宽度
20.1.3表格排序
20.1.4在表格中显示复选框
20.1.5显示行号
20.2表格分页
20.2.1为表格组件添加分页工具栏
20.2.2在表格组件的顶部显示分页工具栏
20.2.3滑动风格分页工具栏
20.2.4带进度条的分页工具栏
20.3编辑表格中的数据
20.3.1第一个可编辑的表格
20.3.2向表格添加新行
20.3.3保存数据
20.4本章小结
第21章TreePanel组件
21.1 TreePanel组件基础
21.1.1我们的第一棵树
21.1.2添加子结点
21.1.3读取服务端的JSON数据
21.1.4事件
21.1.5右键菜单
21.1.6显示结点文本
21.1.7将结点设置成超链接
21.1.8修改结点的文本
21.2拖放树结点
21.2.1结点拖放的位置
21.2.2向叶子结点追加子结点
21.2.3在树之间拖放结点
21.3本章小结
第22章ExtJS中的其他组件
22.1菜单组件
22.1.1基本的菜单
22.1.2下拉菜单
22.1.3多级菜单
22.1.4向菜单中添加分隔线
22.1.5多选和单选菜单
22.1.6日期和颜色菜单
22.2工具栏组件
22.2.1 Ext.Toolbar.Button组件
22.2.2 Ext.Toolbar.TextMenu组件
22.2.3 Ext.Toolbar.Spacer组件
22.2.4 Ext.Toolbar.Separator组件
22.2.5 Ext.SplitButton组件
22.2.6在工具栏上添加输入组件
22.3本章小结
第4篇 综合实例篇
第23章 网络硬盘
23.1系统功能描述
23.2数据库设计
23.3数据库访问
23.3.1配置数据源
23.3.2对数据进行增、删、改、查
23.3.3处理用户数据
23.3.4处理文件和目录
23.4主页面的实现
23.4.1建立主页面
23.4.2验证JSP页面的访问权限
23.4.3建立验证Servlet访问权限的Servlet
23.5新建文件夹
23.5.1建立新建文件夹页面
23.5.2显示模式窗口
23.5.3建立创建目录的Servlet
23.6上传文件
23.6.1建立上传文件页面
23.6.2建立上传文件Servlet
23.7下载文件和目录
23.7.1下载单个文件
23.7.2打包下载多个文件和目录
23.7.3通过AJAX技术发送下载请求
23.8删除文件和目录
23.9本章小结
第24章 数字魔法之读心术
24.1奇妙的数字游戏
24.2预定义数字块
24.3随机显示数字块中的数字
24.4猜猜选的是哪个数字
24.5本章小结
第25章 注册与登录系统
25.1系统概述
25.2数据库设计
25.3实现数据持久化和业务逻辑层
25.3.1编写User类
25.3.2编写DAOSupport类
25.3.3编写操作用户信息的DAO组件
25.3.4编写与用户相关的Service组件
25.4实现Action类与Web表现层组件
25.4.1编写ModelAction类
25.4.2用户注册
25.4.3用户登录
25.5本章小结
第26章 博客系统
26.1系统概述
26.2数据库设计
26.3数据持久层组件
26.3.1编写Blog类
26.3.2编写Reply类
26.4数据访问层组件
26.4.1编写操作Blog信息的DAO组件
26.4.2编写操作回复信息的DAO类
26.5业务逻辑层组件
26.5.1编写与Blog相关的Service组件
26.5.2编写与回复相关的Service组件
26.5.3编写ServiceManager类
26.6配置Spring
26.7 Web表现层组件
26.7.1实现博客系统的主页面
26.7.2发布与编辑Blog信息
26.7.3添加与显示回复信息
26.8本章小结
第27章 电子相册
27.1系统概述
27.2数据库设计
27.3数据持久层与访问层组件
27.3.1数据持久层组件:User类
27.3.2数据持久层组件:Album类
27.3.3数据持久层组件:Photo类
27.3.4数据访问层组件:UserDAO类
27.3.5数据访问层组件:AlbumDAO类
27.3.6数据访问层组件:PhotoDAO类
27.4实现业务逻辑层
27.4.1业务逻辑层组件:UserService类
27.4.2业务逻辑层组件:AlbumService类
27.4.3业务逻辑层组件:PhotoService类
27.5处理用户请求的Servlet
27.5.1 CommonServlet类
27.5.2创建相册:CreateAlbumServlet类
27.5.3删除相册:DeleteAlbumServlet类
27.5.4获得所有相册的信息:GetAlbumsServlet类
27.5.5获得指定相册的内容:GetAlbumServlet类
27.5.6上传照片:UploadPhotoServlet类
27.5.7删除照片:DeletePhotoServlet类
27.5.8浏览指定的照片:ViewPhotoServlet类
27.6 Web表现层
27.6.1用户登录页面:login.j sp
27.6.2用户注册页面:register.jsp
27.6.3电子相册的主页面:main.j sp
27.6.4建立相册的JSP页面:create_ albums.jsp
27.6.5更新相册属性的JSP页面:upload_albums.jsp
27.6.6显示相册中照片的JSP页面:view_album.jsp
27.6.7上传照片的JSP页面:upload_photo.jsp
27.7本章小结