目录 第1章 搭建Java Web开发环境 001 1.1 Web开发技术 001 1.1.1 静态Web开发技术 001 1.1.2 动态Web开发技术 002 1.2 认识Java Web 002 1.2.1 Java语言介绍 002 1.2.2 Java Web体系介绍 003 1.3 JDK的安装与配置 003 1.3.1 JDK的下载 003 1.3.2 JDK的安装 004 1.3.3 JDK环境配置 005 1.3.4 测试开发环境 006 1.4 我的第一个Java程序 007 1.5 选择Java开发工具 008 1.5.1 Eclipse的下载 008 1.5.2 Eclipse的安装与配置 009 1.5.3 用Eclipse创建Java项目 009 1.5.4 创建Java类文件 010 1.5.5 编写和运行Java程序 011 1.6 新手疑难问题解答 012 1.7 实战训练 012 第2章 Web服务器的搭建 013 2.1 Web开发背景知识 013 2.1.1 Web浏览器 013 2.1.2 远程服务器 013 2.1.3 Web应用程序的工作原理 014 2.1.4 Web服务器简介 014 2.2 Tomcat的下载与安装 015 2.2.1 了解Tomcat版本的区别 016 2.2.2 安装Tomcat解压版 017 2.2.3 安装Tomcat安装版 018 2.2.4 环境变量的配置 020 2.3 Tomcat的启动与关闭 021 2.3.1 在服务器中启动与关闭 021 2.3.2 在Eclipse IDE中启动与关闭 022 2.4 修改Tomcat端口号 025 2.4.1 在服务器中修改端口号 025 2.4.2 在Eclipse IDE中修改端口号 025 2.5 将Web项目部署到Tomcat中 025 2.5.1 在服务器中部署Web项目 026 2.5.2 在Eclipse IDE中部署Web项目 026 2.6 新手疑难问题解答 030 2.7 实战训练 031 第3章 HTML与CSS网页开发基础 032 3.1 HTML标记语言 032 3.1.1 第一个HTML文档 032 3.1.2 HTML文档的结构 033 3.1.3 HTML常用标记 034 3.1.4 HTML表格标记 038 3.1.5 HTML表单标记 039 3.1.6 超链接与图像标记 044 3.2 HTML5新增内容 045 3.2.1 新增的元素 045 3.2.2 新增的input元素类型 048 3.3 CSS 051 3.3.1 CSS规则 051 3.3.2 CSS选择器 051 3.3.3 在页面中调用CSS 056 3.4 新手疑难问题解答 059 3.5 实战训练 059 第4章 JavaScript脚本语言 061 4.1 JavaScript概述 061 4.1.1 JavaScript能做什么 061 4.1.2 JavaScript的主要特点 062 4.2 JavaScript的语言基础 062 4.2.1 JavaScript的语法 062 4.2.2 JavaScript中的关键字 063 4.2.3 JavaScript中的数据类型 064 4.2.4 变量的定义及使用 065 4.2.5 运算符的应用 067 4.3 流程控制语句 070 4.3.1 if条件判断语句 070 4.3.2 switch多分支语句 071 4.3.3 while循环语句 072 4.3.4 do…while循环语句 072 4.3.5 for循环语句 073 4.4 函数的应用 074 4.4.1 函数的定义 074 4.4.2 函数的调用 076 4.5 事件处理 078 4.5.1 认识JavaScript中的事件 079 4.5.2 JavaScript的常用事件 079 4.5.3 事件处理程序的调用 081 4.6 常用对象 082 4.6.1 window对象 082 4.6.2 string对象 085 4.6.3 date对象 087 4.7 新手疑难问题解答 088 4.8 实战训练 088 第5章 JSP基础语法 089 5.1 JSP概述 089 5.1.1 JSP简介 089 5.1.2 JSP运行机制 089 5.2 JSP基本语法 090 5.2.1 声明 090 5.2.2 表达式 091 5.2.3 脚本小程序 091 5.3 JSP指令标记 092 5.3.1 page指令 092 5.3.2 include指令 093 5.3.3 taglib指令 094 5.4 JSP动作标记 095 5.4.1 param动作标记 095 5.4.2 include动作标记 095 5.4.3 forward动作标记 096 5.4.4 plugin动作标记 098 5.4.5 useBean、getProperty与setProperty动作标记 099 5.5 JSP注释方式 100 5.5.1 HTML/XHTML注释 100 5.5.2 JSP注释 100 5.5.3 Java注释 100 5.6 新手疑难问题解答 101 5.7 实战训练 101 第6章 JSP内置对象 103 6.1 JSP内置对象概述 103 6.2 request对象 103 6.2.1 访问请求参数 104 6.2.2 在作用域中管理属性 106 6.2.3 获取客户端信息 107 6.3 response对象 107 6.3.1 处理HTTP头文件 108 6.3.2 重定向页面(友情链接) 109 6.3.3 将页面保存为Word文档 111 6.3.4 设置输出缓冲 112 6.3.5 设置Cookie信息 112 6.4 session对象 114 6.4.1 创建及获取客户的会话 114 6.4.2 从会话中移动指定的绑定对象 115 6.4.3 销毁session 115 6.4.4 会话超时的管理 115 6.4.5 session对象应用实例 115 6.5 其他内置对象 116 6.5.1 application对象 116 6.5.2 out对象 118 6.5.3 exception对象 120 6.5.4 page对象 121 6.5.5 config对象 122 6.5.6 pageContext对象 122 6.6 新手疑难问题解答 123 6.7 实战训练 123 第7章 JavaBean组件 125 7.1 JavaBean介绍 125 7.1.1 JavaBean概述 125 7.1.2 JavaBean的规范 126 7.1.3 JavaBean的创建 126 7.2 使用JSP和JavaBean 128 7.2.1 通过JSP标签访问JavaBean 128 7.2.2 在JSP中调用JavaBean 129 7.3 设置JavaBean的范围 130 7.3.1 页面范围 130 7.3.2 请求范围 131 7.3.3 会话范围 132 7.3.4 Web应用范围 132 7.4 设置JavaBean的属性 133 7.4.1 根据所有参数设置 134 7.4.2 根据指定属性设置 135 7.4.3 根据指定参数设置 136 7.4.4 根据指定内容设置 137 7.5 获取JavaBean的属性值 138 7.6 移除JavaBean 140 7.7 新手疑难问题解答 140 7.8 实战训练 140 第8章 Servlet技术 142 8.1 Servlet简介 142 8.1.1 工作原理 142 8.1.2 生命周期 143 8.1.3 实现MVC开发模式 144 8.2 Servlet常用的接口和类 145 8.2.1 Servlet()方法 145 8.2.2 HttpServlet类 145 8.2.3 HttpSession接口 146 8.2.4 ServletConfig接口 147 8.2.5 ServletContext接口 147 8.3 创建和配置Servlet 148 8.4 使用Servlet获取信息 150 8.4.1 获取HTTP头部信息 150 8.4.2 获取请求对象信息 151 8.4.3 获取参数信息 152 8.5 在JSP页面中调用Servlet的方法 154 8.5.1 通过表单提交调用Servlet 154 8.5.2 通过超链接调用Servlet 157 8.6 新手疑难问题解答 158 8.7 实战训练 159 第9章 过滤器与监听器技术 161 9.1 认识过滤器与监听器 161 9.1.1 过滤器简介 161 9.1.2 监听器简介 161 9.2 过滤器接口 162 9.2.1 Filter接口 162 9.2.2 FilterConfig接口 162 9.2.3 FilterChain接口 163 9.3 创建和配置过滤器 163 9.4 监听器接口 165 9.4.1 认识监听器接口 165 9.4.2 监听对象的创建与销毁 166 9.4.3 监听对象的属性 167 9.4.4 监听session内的对象 168 9.5 创建和配置监听器 168 9.6 Servlet 3.0的新特性 169 9.6.1 注解 169 9.6.2 异步处理 174 9.6.3 上传组件 176 9.7 新手疑难问题解答 178 9.8 实战训练 178 第10章 Java Web中的数据库开发 180 10.1 JDBC的原理 180 10.2 JDBC的相关类与接口 182 10.2.1 DriverManager类 182 10.2.2 Connection接口 183 10.2.3 Statement接口 183 10.2.4 PreparedStatement接口 184 10.2.5 ResultSet接口 184 10.3 JDBC连接数据库 184 10.3.1 加载数据库驱动程序 185 10.3.2 创建数据库连接 185 10.3.3 获取Statement对象 185 10.3.4 执行SQL语句 185 10.3.5 获得执行结果 185 10.3.6 关闭连接 186 10.4 操作数据库 186 10.4.1 创建数据表 186 10.4.2 插入数据 188 10.4.3 查询数据 188 10.4.4 更新数据 190 10.4.5 删除数据 191 10.5 新手疑难问题解答 192 10.6 实战训练 193 第11章 表达式语言EL 194 11.1 EL简介 194 11.1.1 EL的基本语法 194 11.1.2 EL的特点 194 11.1.3 禁用EL 195 11.1.4 EL中的关键字 195 11.1.5 EL变量 196 11.2 EL运算符 197 11.2.1 EL判断对象是否为空 197 11.2.2 通过EL访问数组数据 198 11.2.3 在EL中进行算术运算 199 11.2.4 在EL中进行关系运算 200 11.2.5 在EL中进行逻辑运算 201 11.2.6 在EL中进行条件运算 202 11.3 EL隐含对象 202 11.3.1 认识EL隐含对象 202 11.3.2 pageContext隐含对象 203 11.3.3 与范围有关的隐含对象 204 11.3.4 param和paramValues对象 205 11.3.5 header和headerValues对象 206 11.3.6 cookie对象 207 11.3.7 initParam对象 207 11.4 新手疑难问题解答 208 11.5 实战训练 209 第12章 XML技术 210 12.1 XML概述 210 12.1.1 XML概念 210 12.1.2 XML与HTML的区别 210 12.1.3 XML文档结构 211 12.2 XML基本语法 211 12.2.1 文档声明 211 12.2.2 标签(元素) 212 12.2.3 标签嵌套 212 12.2.4 属性与注释 212 12.2.5 实体引用 213 12.3 XML树结构 213 12.4 XML解析器 214 12.4.1 XML文档对象 214 12.4.2 解析XML文档 215 12.4.3 解析XML字符串 216 12.5 新手疑难问题解答 218 12.6 实战训练 218 第13章 JSTL技术 220 13.1 JSTL简介 220 13.1.1 JSTL概述 220 13.1.2 导入标签库 220 13.1.3 JSTL的分类 221 13.2 JSTL环境配置 223 13.3 表达式控制标签 224 13.3.1 <c:out>标签 224 13.3.2 <c:set>标签 225 13.3.3 <c:remove>标签 227 13.3.4 <c:catch>标签 227 13.4 流程控制标签 228 13.4.1 <c:if>标签 228 13.4.2 <c:choose>标签 229 13.4.3 <c:when>标签 229 13.4.4 <c:otherwise>标签 229 13.5 循环标签 230 13.5.1 <c:forEach>标签 230 13.5.2 <c:forTokens>标签 231 13.6 URL操作标签 232 13.6.1 <c:import>标签 232 13.6.2 <c:url>标签 233 13.6.3 <c:param>标签 234 13.6.4 <c:redirect>标签 235 13.7 新手疑难问题解答 236 13.8 实战训练 236 第14章 Ajax技术的应用 237 14.1 Ajax概述 237 14.1.1 什么是Ajax 237 14.1.2 Ajax的工作原理 238 14.1.3 Ajax的优缺点 238 14.2 Ajax技术的组成 239 14.2.1 XMLHttpRequest对象 239 14.2.2 XML 239 14.2.3 JavaScript语言 239 14.2.4 CSS技术 240 14.2.5 DOM技术 240 14.3 XMLHttpRequest对象的使用 240 14.3.1 初始化XMLHttpRequest对象 240 14.3.2 XMLHttpRequest对象的属性 241 14.3.3 XMLHttpRequest对象的方法 242 14.4 Ajax异步交互的应用 243 14.4.1 什么是异步交互 243 14.4.2 异步对象连接服务器 244 14.4.3 GET和POST方式 246 14.4.4 服务器返回XML 248 14.4.5 处理多个异步请求 250 14.5 新手疑难问题解答 252 14.6 实战训练 252 第15章 Struts2框架的应用 254 15.1 Struts2概述 254 15.1.1 Struts MVC模式 254 15.1.2 Struts工作流程 255 15.1.3 Struts基本配置 255 15.2 第一个Struts2程序 257 15.2.1 创建JSP页面 257 15.2.2 创建Action 258 15.2.3 struts.xml文件 259 15.2.4 web.xml文件 259 15.2.5 显示信息 260 15.2.6 运行项目 260 15.3 控制器Action 261 15.3.1 Action接口 261 15.3.2 属性注入值 261 15.3.3 动态方法调用 263 15.3.4 Map类型变量 264 15.4 Struts标签库 266 15.4.1 标签库的配置 266 15.4.2 流程控制标签 266 15.4.3 表单应用标签 270 15.5 OGNL表达式语言 274 15.5.1 Struts2 OGNL表达式 274 15.5.2 获取ActionContext对象信息 274 15.5.3 获取属性与方法 277 15.5.4 访问静态属性与方法 279 15.5.5 访问数组和集合 280 15.5.6 过滤与投影 283 15.6 新手疑难问题解答 286 15.7 实战训练 286 第16章 Hibernate框架的应用 288 16.1 Hibernate概述 288 16.1.1 ORM概述 288 16.1.2 Hibernate架构 288 16.2 开发环境配置 289 16.2.1 关联数据库 289 16.2.2 配置Hibernate 290 16.2.3 Hibernate配置文件 291 16.3 Hibernate ORM 292 16.3.1 在MyEclipse中建表 292 16.3.2 Hibernate反转控制 293 16.3.3 Hibernate持久化类 294 16.3.4 Hibernate类映射 296 16.3.5 session管理 297 16.4 操作持久化类 299 16.4.1 使用session操作数据 299 16.4.2 使用DAO操作数据 300 16.5 Hibernate查询语言 300 16.5.1 HQL介绍 301 16.5.2 FROM语句 301 16.5.3 WHERE语句 301 16.5.4 UPDATE语句 302 16.5.5 DELETE语句 303 16.5.6 动态赋值 303 16.5.7 排序查询 305 16.5.8 聚合函数 305 16.5.9 联合查询 306 16.5.10 子查询 307 16.6 新手疑难问题解答 308 16.7 实战训练 308 第17章 开发银行业务管理系统 310 17.1 系统背景及功能概述 310 17.1.1 背景简介 310 17.1.2 功能概述 310 17.1.3 开发及运行环境 310 17.2 系统分析 311 17.2.1 系统总体设计 311 17.2.2 系统界面设计 311 17.3 系统运行及配置 312 17.3.1 系统开发及导入步骤 312 17.3.2 系统文件结构图 314 17.4 系统主要功能的实现 315 17.4.1 数据库与数据表设计 315 17.4.2 实体类的创建 318 17.4.3 数据访问类 320 17.4.4 控制分发及配置 321 17.4.5 业务数据处理 323