Java Web开发与实战(Java软件开发系列精品课程)(附赠DVD光盘一张)
分類: 图书,计算机与互联网,程序语言与软件开发,语言与开发工具,Java,综合,
品牌: 刘伟
基本信息·出版社:科学出版社,北京科海电子出版社
·页码:420 页
·出版日期:2008年
·ISBN:7030232992/9787030232991
·条形码:9787030232991
·包装版本:1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:Java软件开发系列精品课程
·附带品描述:附赠DVD光盘一张
产品信息有问题吗?请帮我们更新产品信息。
内容简介《Java Web开发与实战》采用理论阐述与项目演示相结合的方式,全面讲解了Java Web编程所需的核心技术,并涵盖一些高级技术主题。主要内容包括Web应用程序运行原理、主流集成开发工具(Eclipse/MyEclipse)和运行环境(Tomcat)的配置和使用、Servlet、JSP、JDBC、JSP表达式语言(EL)、Servlet监听器和过滤器、定制标记库、JSTL、MVC模式、DAO设计模式、数据源和连接池、文件上传、Java Mail和分页显示、Web编程中文乱码问题及解决方案、应用程序的打包和部署等。书中还深入讲解了客户端验证框架JSValidation、在线文本编辑器FCKeditor和Apache Commons的一些类库等功能强大的实用开发工具。另外,书中提供了大量的实例代码,读者可以自由取用,这些代码功能强大,适合解决Java Web开发中的实际问题。《Java Web开发与实战》论述精准而深刻,程序实例丰富实用。《Java Web开发与实战》要求读者具备Java编程语言和HTML基础,适合用作普通高校教材或相关职业培训教材,更是Java Web初学者和程序员的首选技术参考书。
作者简介刘伟老师,北京大学硕士,8年Java,J2EE,J2ME开发与培训经验,资深软件架构师、软件开发管理人员,主持并参与了多个大型J2EE项目开发。张利国老师清华大学双学士,10年Java软件开发及教学经验,曾任北京新东方学校Java软件金牌讲师,荣获2004年度新东方教育科技集团优秀教师。主持和参与开发了多个J2EE大型项目。2003年出版《Java实用案例教程》一书,广受好评。两位作者主持开发的项目:·北京电信网上业务受理系统·电信资产管理系统·GSM短信平台·Infordeliver公司一路透社基于Java+XML技术的新闻软件开发项目·银河证券客户交易结算资金第三方存管(多银行模式)业务模块开发·交通部EHR项目开发
编辑推荐《Java Web开发与实战》为您呈现的是“图书详解+多媒体视频+网站技术支持”三位一体式学习环境。
图书详解:《Java Web开发与实战》讲解了在当前主流开发平台下进行、Java Web开发所需的核心技术,包括一些高级技术主题。作者在讲解技术的同时,将现代企业中采用的项目迭代式开发方法运用到对知识的讲解中,即对同一个项目使用不同的技术实现,使其功能逐步增强。例如书中“网络留言本”项目的9个版本的实现。这种技术讲解形式让您能综合运用所学知识,并为学习带来无穷乐趣,在技术的不断提升中轻松找到成就感。
多媒体视频:《Java Web开发与实战》DVD中收录了长达33/J、时的Java Web课程语音视频讲解,堪称是作者的培训课堂实录。光盘内容基于《Java Web开发与实战》,但不仅限于《Java Web开发与实战》。您从中不但能看到《Java Web开发与实战》所有内容的视频体现,更有书本之外的知识点滴,以及作者在技术讲解中不时进发的思想和智慧。如身临课堂实境,真正超值。
网站技术支持:为了给阅读《Java Web开发与实战》的读者提供帮助,作者特建立技术支持网站(WWW.v512.corn),为图书提供售后服务和技术支持。您可以从该网站下载Java Web相关的其他技术视频,并可参与论坛中的技术讨论,更有专家为您答疑解惑。
如今,Java技术在企业级开发中占据着绝对主导的地位,而Java Web是Java企业级开发的核心,所以职场中对,Java Web程序员的需求很大。《Java Web开发与实战》完全从实战的角度出发,并结合大量工程实例。学完《Java Web开发与实战》,您完全可以胜任Java Web开发的工作。
目录
第1章 Web开发工具的安装与使用 1
视频时长:50分钟
1.1 JDK的安装 1
1.2 Tomcat的安装和配置 2
1.2.1 下载Tomcat 3
1.2.2 修改context.xml和server.xml 3
1.2.3 修改tomcat-users.xml 4
1.2.4 启动和关闭Tomcat 4
1.2.5 Tomcat的目录结构 5
1.3Eclipse的安装与使用 6
1.3.1 Eclipse的历史 6
1.3.2 Eclipse的架构 6
1.3.3 Eclipse版本说明 7
1.3.4 Eclipse的下载与安装 7
1.3.5 Eclipse的汉化 8
1.3.6 Eclipse的启动 8
1.3.7 Eclipse界面说明 9
1.3.8 Eclipse构建路径调整 12
1.3.9 Eclipse编译器调整 13
1.4实例:Eclipse开发Java应用程序 13
hello项目,熟悉Eclipse的环境,体验在Eclipse中如何快速方便地进行Java应用程序的开发。
1.4.1 新建Java项目 13
1.4.2 新建HelloWorld类 14
1.4.3 增加属性与方法 15
1.4.4 格式化源程序 17
1.4.5 运行输出 17
1.4.6 调试代码 17
1.5MyEclipse 18
1.5.1 MyEclipse概述 18
1.5.2 MyEclipse的下载 19
1.5.3 MyEclipse安装 19
1.5.4 在MyEclipse中配置Tomcat服务器 20
1.6更多参考信息 21
第2章 Web编程技术基础 22
视频时长:1小时20分钟
2.1Internet的起源 22
2.1.1 TCP/IP协议 23
2.1.2 TCP/IP的四层结构 23
2.1.3 Application层常用协议 24
2.2WWW 25
2.2.1 URL 25
2.2.2 HTML 26
2.2.3 HTTP 26
2.2.4 Web服务器 26
2.2.5 浏览器 27
2.3Web动态编程 28
2.4Servlet 29
2.5实例:Java Web服务器 29
webserver项目,编写一个Java Web服务器,加深对HTTP协议的认识。
2.5.1 目标 30
2.5.2 新建Java项目 30
2.5.3 新建Java文件 30
2.5.4 运行输出 33
2.6更多参考信息 34
第3章 Servlet编程 35
视频时长:1小时40分钟
3.1Servlet的发展 35
3.2Servlet的结构 35
3.2.1 javax.servlet.Servlet 36
3.2.2 javax.servlet.GenericServlet 37
3.2.3 javax.servlet.http.HttpServlet 37
3.3实例(一):编写Servlet 38
3.3.1 目标 38
3.3.2 编写Servlet源程序 38
3.3.3 建立Java Web应用目录结构 39
3.3.4 编写web.xml文件 39
3.3.5 运行Servlet 40
3.4实例(二):使用MyEclipse开发Servlet 40
webproject1项目,演示利用MyEclipse插件如何创建Java Web项目和编写Servlet文件。
3.4.1 目标 40
3.4.2 新建Web Project 40
3.4.3 新建Servlet文件 43
3.4.4 程序解释 45
3.4.5 部署Web应用程序 45
3.4.6 运行输出 48
3.4.7 Servlet文件调试 48
3.5Servlet生命周期描述 49
3.6实例(三):Servlet获取初始化的参数 50
3.6.1 目标 50
3.6.2 新建GetInitParameterServlet类 50
3.6.3 运行输出 52
3.6.4 程序解释 52
3.7实例(四):Servlet获取服务器的运行参数 52
3.7.1 目标 52
3.7.2 新建GetServerInfoServlet类 52
3.7.3 运行输出 54
3.7.4 程序解释 54
3.8实例(五):Servlet获得头信息 55
3.8.1 目标 55
3.8.2 新建GetHeaderInfoServlet类 55
3.8.3 运行输出 56
3.8.4 程序解释 57
3.9更多参考信息 57
第4章 Servlet处理表单数据 58
视频时长:3小时
4.1HTML表单 58
4.1.1 Form 58
4.1.2 Input text 59
4.1.3 Input password 59
4.1.4 Input radio 59
4.1.5 Input checkbox 60
4.1.6 Select单选 60
4.1.7 Select多选 61
4.1.8 Textarea 61
4.1.9 Submit按钮 62
4.1.10 Reset按钮 63
4.2Servlet接收HTML表单信息 63
4.3实例(一):Servlet处理HTML表单数据(1) 63
webproject2项目,演示如何通过HttpServletRequest对象的getParameter方法获取客户浏览器发送过
来的表单数据。
4.3.1 目标 63
4.3.2 新建webproject2项目 64
4.3.3 新建LoginFormServlet 64
4.3.4 运行输出 65
4.3.5 程序解释 66
4.3.6 解决表单中文参数乱码问题 66
4.4实例(二):Servlet处理HTML表单数据(2) 67
4.4.1 目标 67
4.4.2 新建login.htm 67
4.4.3 新建LoginServlet.java 69
4.4.4 运行输出 70
4.4.5 程序解释 70
4.5实例(三):网络调查表(1) 70
4.5.1 目标 70
4.5.2 新建survey.htm 70
4.5.3 新建SurveyServlet 73
4.5.4 运行输出 74
4.5.5 程序解释 75
4.6实例(四):网络调查表(2) 76
4.6.1 目标 76
4.6.2 新建survey2.htm 76
4.6.3 新建SurveyServlet2 77
4.6.4 运行输出 78
4.6.5 程序解释 79
4.7客户端验证表单输入内容 79
4.8实例(五):HTML表单增加JavaScript验证 79
4.8.1 目标 79
4.8.2 新建login2.htm 79
4.8.3 运行输出 80
4.8.4 程序解释 81
4.9JSValidation验证框架 81
4.9.1 下载JSValidation 82
4.9.2 validation-config.xml解释 82
4.10实例(六):使用JSValidation验证框架 84
4.10.1 目标 84
4.10.2 JSvalidation配置 84
4.10.3 编写survey3.htm 85
4.10.4 编写validation-config.xml文件 85
4.10.5 运行输出 86
4.10.6 程序解释 87
4.11FCKeditor 87
4.11.1 FCKeditor主要功能特性 87
4.11.2 下载FCKeditor 88
4.11.3 FCKeditor的使用 88
4.12实例(七):使用FCKeditor 89
fckeditordemo项目,演示FCKeditor组件的使用。
4.12.1 新建fckeditordemo项目 89
4.12.2 新建addContent.htm 90
4.12.3 新建AddContentServlet 91
4.12.4 运行输出 92
4.12.5 FCKeditor类说明 92
4.12.6 FCKeditor组件文件精简 93
4.13更多参考信息 94
第5章 JDBC、连接池与数据源 95
视频时长:3小时30分钟
5.1JDBC的历史 95
5.2JDBC概述 96
5.3JDBC驱动程序 97
5.4实例(一):安装和配置Oracle的JDBC驱动程序 97
5.4.1 目标 97
5.4.2 获得Oracle驱动程序 97
5.4.3 配置Oracle驱动程序 97
5.5JDBC编程 98
5.5.1 建立数据库连接 98
5.5.2 向数据库中提交SQL 99
5.5.3 处理数据库返回的结果 100
5.5.4 释放数据库连接 101
5.6实例(二):JDBC操作Oracle数据库的例子 102
jdbcexample项目,操作Oracle数据库的例子。
5.6.1 目标 102
5.6.2 建表 102
5.6.3 新建项目与JDBCExample.java文件 102
5.7实例(三):网络留言本 V1.0 104
guestbook v1.0项目,通过使用JDBC、HTML和Servlet技术,实现网络留言本。
5.7.1 目标 104
5.7.2 建表与建序列 104
5.7.3 新建guestbook项目 105
5.7.4 项目核心文件列表 106
5.7.5 修改validation-framework.js文件 106
5.7.6 编辑jsvalidation-config.xml 106
5.7.7 编辑addMessage.htm 107
5.7.8 编辑StringUtil.java 109
5.7.9 编辑AddMessageServlet.java 110
5.7.10 编辑GetMessagesServlet.java 112
5.7.11 运行输出 114
5.8数据库连接池 115
5.9实例(四):编写JDBC连接池程序 116
pooling项目,演示如何编写实现一个数据库连接池。
5.9.1 目标 116
5.9.2 待解决的核心问题 117
5.9.3 新建pooling项目 117
5.9.4 编辑dbpool.properties 117
5.9.5 编辑ConnectionPool.java 117
5.9.6 编辑ConnectionPoolTest.java 120
5.9.7 运行输出 121
5.9.8 程序待改进的地方 121
5.10JDBC数据源 122
5.11实例(五):配置Tomcat的连接池和数据源 122
5.12实例(六):网络留言本 V1.1 123
guestbook v1.1项目,修改网络留言本,把获得数据库连接的方式改造成通过连接池获取数据库连接。
5.12.1 目标 123
5.12.2 新建guestbook2项目 123
5.12.3 修改Java Build Path 124
5.12.4 修改validation-framework.js文件 124
5.12.5 修改addMessage.htm文件 124
5.12.6 修改AddMessageServlet.java 124
5.12.7 修改GetMessagesServlet.java 125
5.12.8 运行输出 125
5.13 Commons DbUtils 126
5.13.1 DbUtils类 126
5.13.2 ResultSetHandler 接口 127
5.13.3 MapListHandler类 127
5.13.4 BeanListHandler类 127
5.13.5 QueryRunner 类 127
5.13.6 DbUtil使用例子 128
5.14实例(七):网络留言本 V1.2 131
guestbook v1.2项目,修改网络留言本,把操作数据库的代码修改成使用DbUtils类库。
5.14.1 目标 131
5.14.2 新建guestbook3项目 131
5.14.3 修改addMessage.htm文件 131
5.14.4 修改AddMessageServlet.java 131
5.14.5 修改GetMessagesServlet.java 133
5.14.6 运行输出 135
5.15更多内容 135
第6章 Servlet处理Cookie 136
视频时长:51分钟
6.1Cookie是什么 136
6.2Cookie的典型应用 137
6.2.1 实现“记住我”功能 137
6.2.2 定制个性化页面 138
6.2.3 记录用户访问动作 138
6.3Cookie的运行机制 139
6.4使用Cookie的注意事项 139
6.5Cookie编程 139
6.5.1 生成Cookie对象 139
6.5.2 设定Cookie对象有效期 140
6.5.3 设定Cookie对象的路径与域名 140
6.5.4 发送Cookie对象 140
6.5.5 读取Cookie对象 141
6.5.6 修改Cookie 141
6.5.7 删除Cookie 142
6.6实例:Servlet中Cookie的编程 142
webproject3项目,演示Java Web编程中关于Cookie的核心代码。
6.6.1 目标 142
6.6.2 新建项目 142
6.6.3 编辑cookieInput.htm 142
6.6.4 编辑SetCookiesServlet.java 143
6.6.5 编辑GetCookiesServlet.java 144
6.6.6 运行输出 145
第7章 Servlet会话编程 147
视频时长:1小时50分钟
7.1会话是什么 147
7.2会话的典型应用 148
7.2.1 网店中的购物车功能 148
7.2.2 用户权限控制 148
7.2.3 跨Servlet/JSP传递参数 149
7.3会话的底层实现方式 149
7.4Servlet 会话编程 149
7.5实例(一):演示会话对象的使用 150
webproject4项目,演示HttpSession类提供的主要方法。
7.5.1 目标 150
7.5.2 新建项目 150
7.5.3 编辑DemoSessionServlet 151
7.5.4 运行输出 152
7.6实例(二):使用会话实现网络购物车 153
shoppingcart项目,演示如何使用会话功能实现网络购物车功能。
7.6.1 目标 153
7.6.2 功能说明 153
7.6.3 新建项目 154
7.6.4 编辑CartItem.java 154
7.6.5 编辑ShoppingCart.java 155
7.6.6 编辑AddShoppingCartServlet.java 157
7.6.7 编辑GetShoppingCartServlet.java 159
7.6.8 编辑displayItems.htm 161
7.6.9 运行输出 163
7.6.10 需要改进的地方 164
第8章 JavaServer Pages(JSP) 165
视频时长:2小时49分钟
8.1JavaServer Pages的起源 165
8.2 JSP与Servlet的关系 165
8.3实例(一):开发第一个JSP页面 166
webproject5项目,演示如何使用Eclipse和MyEclipse开发JSP页面,同时实现了两种风格的网页计数器。
8.3.1 目标 166
8.3.2 新建Webproject项目 166
8.3.3 新建first.jsp文件 166
8.3.4 JSP页面的可视化编辑 167
8.3.5 运行输出 168
8.3.6 代码解释 168
8.4JSP内部运行机制 169
8.5JSP语法 173
8.5.1 JSP代码注释 173
8.5.2 指令(Directive)标记 174
8.5.3 声明(Declaration)标记 176
8.5.4 Scriptlet标记 177
8.5.5 表达式(Expression)标记 177
8.6实例(二):JSP语法演示 177
8.6.1 目标 177
8.6.2 新建JSP文件 177
8.6.3 运行输出 179
8.7动作(action) 179
8.7.1 动作 180
8.7.2 动作 181
8.8JSP内置对象 182
8.8.1 out对象 182
8.8.2 request对象 183
8.8.3 response对象 183
8.8.4 session对象 183
8.8.5 application对象 183
8.8.6 page对象 184
8.8.7 pageContext对象 184
8.8.8 exception对象 185
8.8.9 config对象 185
8.9实例(三):网页计数器V1.0 185
8.9.1 目标 185
8.9.2 编辑count.jsp页面 186
8.9.3 程序解释 186
8.9.4 运行输出 186
8.10实例(四):网页计数器V1.1 187
8.10.1 目标 187
8.10.2 准备数字图形文件 187
8.10.3 编辑count2.jsp页面 187
8.10.4 编辑CountFileHandler.java 188
8.10.5 运行输出 189
8.11实例(五):Web应用错误处理解决方案 189
8.11.1 目标 189
8.11.2 HTTP常见错误代码 190
8.11.3 设置web.xml 190
8.11.4 运行输出 192
8.12实例(六):网络留言本 V1.3 192
guestbook v1.3项目,完全使用JSP技术实现网络留言本。
8.12.1 目标 192
8.12.2 新建guestbook4项目 192
8.12.3 项目核心文件列表 193
8.12.4 编辑header.jsp 193
8.12.5 编辑footer.htm 194
8.12.6 编辑addMessage.jsp 194
8.12.7 编辑addMessageHandler.jsp 196
8.12.8 编辑getMessages.jsp 197
8.12.9 运行输出 199
8.13 更多参考信息 199
第9章 JavaBeans 200
视频时长:2小时40分钟
9.1引入JavaBeans 200
9.2JavaBeans的编写 201
9.3useBean动作 202
9.4setProperty动作 203
9.5getProperty动作 203
9.6JavaBeans对象的作用范围 203
9.6.1 page Scope 204
9.6.2 request Scope 204
9.6.3 session Scope 205
9.6.4 application Scope 205
9.7使用JavaBeans的好处 206
9.8实例(一):JSP页面使用JavaBeans 207
webproject6项目,演示如何在JSP页面中运用JavaBeans。
9.8.1 目标 207
9.8.2 新建项目 207
9.8.3 新建Book.java 207
9.8.4 编辑book.htm 207
9.8.5 编辑displayBook.jsp 208
9.8.6 运行输出 209
9.9实例(二):网络留言本 V1.4 209
guestbook v1.4项目,使用JSP和JavaBeans技术实现网络留言本。
9.9.1 目标 209
9.9.2 新建guestbook5项目 209
9.9.3 项目核心文件列表 210
9.9.4 新建OracleUtil.java 210
9.9.5 新建Guestbook.java 212
9.9.6 修改addMessageHandler.jsp 213
9.9.7 编辑getMessages.jsp 214
9.9.8 运行输出 216
9.9.9 项目需要改进的地方 216
9.10Commons BeanUtils 216
9.10.1 Commons BeanUtils的下载 217
9.10.2 实例(三):使用BeanUtils的例子 217
9.10.3 访问JavaBeans属性 223
9.10.4 设定JavaBeans属性 224
9.10.5 复制JavaBeans对象的属性 224
9.10.6 动态创建JavaBeans对象 224
9.10.7 ResultSetDynaClass 226
9.10.8 RowSetDynaClass 227
9.10.9 RowSetDynaClass与MapListHandler的比较 228
9.11更多参考信息 229
第10章 MVC模式 230
视频时长:54分钟
10.1JSP Model 1 230
10.2 JSP Model 2 231
10.3MVC架构模式 232
10.3.1 视图(View) 232
10.3.2 模型(Model) 232
10.3.3 控制器(Controller) 232
10.3.4 MVC的优缺点 233
10.4实例:网络留言本 V1.5 233
guestbook v1.5项目,使用MVC模式,运用JSP、Servlet和JavaBeans技术实现网络留言本。
10.4.1 目标 233
10.4.2 新建guestbook6项目 233
10.4.3 项目核心文件列表 234
10.4.4 修改AddMessageServlet.java 234
10.4.5 修改GetMessagesServlet.java 236
10.4.6 修改addMessage.jsp 236
10.4.7 修改GetMessages.jsp 237
10.4.8 新建addResult.jsp 237
10.4.9 运行输出 237
10.4.10 程序运行流程分析 237
10.4.11 两种转向的区别 238
10.5基于MVC的Web开发框架 240
10.5.1 Struts 240
10.5.2 WebWork 240
10.5.3 Spring MVC 240
10.6更多参考信息 241
第11章 JSP Expression Language 242
视频时长:1小时06分钟
11.1JSP EL的基本用法 242
11.2JSP EL运算符 243
11.3 使用JSP EL读取JavaBeans属性 243
11.4JSP EL内置对象 245
11.4.1 作用范围相关对象 245
11.4.2 param或paramValues对象 245
11.4.3 header或headerValues对象 245
11.4.4 cookie内置对象 245
11.4.5 initParam对象 246
11.4.6 pageContext对象 246
11.5设定JSP不使用JSP EL 246
11.6实例:演示JSP EL的用法 246
webproject7项目,演示JSP EL的用法。
11.6.1 目的 246
11.6.2 新建Web项目 247
11.6.3 编辑elExample1.jsp 247
11.6.4 编辑elExample2.jsp 248
11.6.5 编辑elExample3.jsp 250
11.6.6 编辑elExample4.jsp 251
11.6.7 编辑elExample5.jsp 252
11.6.8 编辑elExample6.jsp 254
11.6.9 编辑elExample7.jsp 255
11.6.10 编辑elExample8.jsp 257
11.6.11 编辑elExample9.jsp 258
11.6.12 编辑elExample10.jsp 258
11.6.13 修改web.xml 259
第12章 定制标记库 260
视频时长:1小时20分钟
12.1定制标记库概述 260
12.2实例(一):编写测量代码运行时间的定制标记 261
webproject8项目,演示编写定制标记库的基本步骤和方法。
12.2.1 目标 261
12.2.2 新建Web项目 261
12.2.3 编辑TimerTag.java 261
12.2.4 编辑util.tld文件 263
12.2.5 编辑timerTag.jsp 263
12.2.6 运行输出 264
12.3为定制标记增加属性 264
12.4实例(二):编写显示日期时间的标记 265
12.4.1 目标 265
12.4.2 编辑DateTimeTag.java 265
12.4.3 修改util.tld文件 266
12.4.4 编辑dateTimeTag.jsp 267
12.4.5 运行输出 267
12.5实例(三):编写循环执行的定制标记 267
12.5.1 目标 267
12.5.2 编辑LoopTag.java 268
12.5.3 修改util.tld 268
12.5.4 编辑loopTag.jsp 269
12.5.5 运行输出 269
12.6定制标记运行原理 270
12.6.1 JspTag接口 270
12.6.2 Tag接口 270
12.6.3 IterationTag接口 271
12.6.4 TagSupport类 271
12.7 BodyTag接口 272
12.8 BodyTagSupport类 273
12.9实例(四):编写过滤HTML代码的标记 274
12.9.1 目标 274
12.9.2 编辑FilterHtmlTag.java 274
12.9.3 修改util.tld 275
12.9.4 运行输出 275
12.10脚本变量 276
12.10.1 使用TagExtraInfo的方式 276
12.10.2 设置元素 277
12.10.3 两种设置脚本变量的比较 278
12.11实例(五):编写使用Cookie的定制标记 278
12.11.1 目标 278
12.11.2 编辑CookieTag.java 278
12.11.3 编辑CookieTei.java 279
12.11.4 修改tld文件 280
12.11.5 编辑cookieTag.jsp 280
12.11.6 运行输出 281
12.12SimpleTag 281
12.13SimpleTagSupport 282
12.14实例(六):编写实现过滤HTML的标记V1.1 282
12.14.1 目标 282
12.14.2 编辑FilterHtmlSimpleTag.java 282
12.14.3 配置TLD文件 283
12.14.4 编辑filterHtmlSimpleTag.jsp 283
12.14.5 运行输出 284
12.15标记处理类编写小结 284
12.16Tag文件 285
12.16.1 编写Tag文件 285
12.16.2 Tag文件可以使用的指令 286
12.17标记库打包 291
12.18常用开源定制标记库介绍 292
12.18.1 JSTL 292
12.18.2 Jakarta Taglibs 292
12.18.3 Display tag 292
第13章 JSTL 294
视频时长:2小时14分钟
13.1JSTL概述 294
13.2下载安装JSTL 295
13.3Core标记库 296
13.3.1 标记 296
13.3.2 标记 297
13.3.3 标记 298
13.3.4 标记 299
13.3.5 标记 300
13.3.6 标记 300
13.3.7 标记 301
13.3.8 301
13.3.9 标记 302
13.3.10 标记 304
13.3.11 标记 305
13.3.12 标记 306
13.3.13 标记 307
13.4Format标记库 308
13.4.1 国际化 308
13.4.2 标记 308
13.4.3 标记 309
13.4.4 标记 309
13.4.5 标记 310
13.4.6 标记 311
13.4.7 标记 312
13.4.8 标记 314
13.4.9 标记 315
13.4.10 标记 316
13.4.11 标记 316
13.4.12 标记 318
13.4.13 标记 318
13.5XML标记库 318
13.5.1 标记 319
13.5.2 标记 321
13.6SQL标记库 323
13.6.1 标记 323
13.6.2 标记 324
13.6.3 标记 326
13.6.4 标记 326
13.6.5 标记 327
13.6.6 标记 329
13.7Functions标记库 330
13.8实例:网络留言本 V1.6 331
guestbook v1.6项目,改进网络留言本,在JSP页面中使用JSP EL和JSTL 的Core标记库。
13.8.1 目标 331
13.8.2 新建guestbook7项目 332
13.8.3 修改header.jsp 332
13.8.4 修改addMessage.jsp 332
13.8.5 修改addResult.jsp 332
13.8.6 修改getMessages.jsp 333
13.8.7 运行输出 334
13.9更多参考信息 334
第14章 Servlet监听器 335
视频时长:32分钟
14.1概述 335
14.2HttpSession监听器接口 335
14.2.1 HttpSessionListener 335
14.2.2 HttpSessionAttributeListener 336
14.2.3 HttpSessionBindingListener 336
14.2.4 HttpSessionActivationListener 337
14.3实例:统计网站在线人数 337
webproject10项目,演示如何编写能够实时统计当前网站在线人数的程序。
14.3.1 目标 337
14.3.2 新建项目 337
14.3.3 编辑CounterListener.java 337
14.3.4 编辑web.xml 338
14.3.5 编辑display.jsp 338
14.3.6 运行输出 339
14.4ServletContext监听器接口 339
14.4.1 ServletContextListener 339
14.4.2 ServletContextAttributeListener 339
14.5HttpServletRequest监听器 340
14.5.1 ServletRequestListener 340
14.5.2 ServletRequestAttributeListener 340
第15章 Servlet过滤器 342
视频时长:2小时15分钟
15.1概述 342
15.2javax.servlet.Filter接口 343
15.2.1 init()方法 343
15.2.2 destroy()方法 343
15.2.3 doFilter()方法 344
15.3配置过滤器 344
15.4过滤器的用途 344
15.5实例(一):使用过滤器设定传输参数编码 345
webproject11项目,使用Servlet过滤器技术,编写能解决页面传递中文参数乱码问题的程序。
15.5.1 目标 345
15.5.2 新建项目 345
15.5.3 编辑EncodingFilter.java 345
15.5.4 编辑web.xml 346
15.5.5 编辑index.jsp 346
15.5.6 运行输出 347
15.6实例(二):网络留言本 V1.7 348
guestbook v1.7项目,改进网络留言本,使用Servlet过滤器来实现对留言内容的管理功能。
15.6.1 目标 348
15.6.2 新增admin表 348
15.6.3 新建guestbook8项目 348
15.6.4 编辑AdminUserServlet.java 349
15.6.5 编辑AuthenticationFilter.java 351
15.6.6 编辑ManageServlet.java 352
15.6.7 编辑login.jsp 354
15.6.8 修改validation-config.xml 355
15.6.9 编辑loginFail.jsp 355
15.6.10 编辑list.jsp 356
15.6.11 编辑edit.jsp 357
15.6.12 编辑updateResult.jsp 358
15.6.13 编辑deleteResult.jsp 359
15.6.14 修改web.xml 359
15.6.15 运行输出 360
第16章 文件上传与邮件发送 361
视频时长:1小时52分钟
16.1文件上传 361
16.2实例(一):使用FileUpload实现文件上传 362
webproject12项目,演示Apache Commons FileUpload组件实现文件上传,同时演示了使用Apache Commons EMail组件实现邮件发送。
16.2.1 目的 362
16.2.2 新建webproject12项目 362
16.2.3 编辑uploadFile.jsp 362
16.2.4 编辑UploadServlet.java 363
16.2.5 编辑uploadResult.jsp 365
16.2.6 修改web.xml文件 365
16.2.7 程序运行 365
16.3JavaMail 366
16.3.1 JavaMail下载与安装 367
16.3.2 JavaMail核心类 367
16.4实例(二):编写邮件发送程序V1.0 369
16.4.1 目标 369
16.4.2 编辑SendMail.java 369
16.4.3 程序运行 370
16.5实例(三):编写邮件发送程序 V1.1 370
16.5.1 目标 370
16.5.2 下载Apache Commons Email组件 370
16.5.3 编辑sendMail.jsp 370
16.5.4 编辑SendMailServlet.java 371
16.5.5 编辑sendResult.jsp 372
16.5.6 运行输出 372
16.6实例(四):编写邮件发送程序V1.2 373
16.6.1 目标 373
16.6.2 编辑SendAttachmentMailServlet.java 373
16.6.3 新建sendAttachmentMail.jsp 375
16.6.4 修改web.xml文件 375
16.6.5 程序运行 376
16.7更多参考信息 376
第17章 DAO设计模式与分页显示 377
视频时长:3小时05分钟
17.1DAO设计模式 377
17.1.1 DAO模式的实现 377
17.1.2 DAO模式的优势 380
17.2分页显示 381
17.2.1 Displaytag标记库 381
17.2.2 超大记录数的分页显示 385
17.2.3 Pager标记库 391
17.3实例:网络留言本V1.8 393
guestbook v1.8项目,改进网络留言本,使用DAO设计模式、Displaytag和Pager标记库实现留言的分页显示。
17.3.1 目标 393
17.3.2 新建guestbook9项目 393
17.3.3 修改GuestbookDAO.java 394
17.3.4 修改GuestbookDAOJdbc.java 394
17.3.5 编写Admin.java 394
17.3.6 编写AdminDAO.java 395
17.3.7 编写AdminDAOJdbc.java 395
17.3.8 修改AddMessageServlet.java 396
17.3.9 修改GetMessagesServlet.java 397
17.3.10 修改AdminUserServlet.java 398
17.3.11 修改ManageServlet.java 398
17.3.12 修改list.jsp 401
17.3.13 修改getMessages.jsp 401
17.3.14 修改web.xml 403
17.3.15 运行输出 403
17.4更多的参考信息 403
第18章 解决中文乱码 404
视频时长:43分钟
18.1字符集与编码方法 404
18.1.1 字符集(Character Set) 404
18.1.2 字符编码 404
18.1.3 ASCII 405
18.1.4 ISO8859-1 406
18.1.5 GB2312 406
18.1.6 GBK 406
18.1.7 GB18030 407
18.1.8 BIG5 407
18.1.9 Unicode 407
18.2Java中字符的表示与处理 409
18.3Java Web编程中文乱码解决方法 409
18.3.1 调用JSP页面显示乱码 409
18.3.2 调用Servlet页面显示乱码 410
18.3.3 POST表单传递参数乱码 411
18.3.4 URI方式传递参数乱码 412
18.3.5 Properties文件乱码 413
18.4更多参考信息 413
第19章 Web应用与web.xml 414
视频时长:20分钟
19.1Web应用 414
19.1.1 Web应用的目录结构 414
19.1.2 Web应用打包 415
19.2web.xml文件 416
19.2.1 web.xml的元素说明 417
19.2.2 Web应用初始化 420
……[看更多目录]
序言我从2000年开始接触Java,到今天已近9个年头了,这9年时间,我主要从事Java的开发、架构和Java技术的推广与培训。学习一种新的编程技术,入门学习是最不容易的,特别是那些没有从事过编程工作的读者。多年的Java培训经验,使我深知什么样的学习方法和内容是初学者需要的。所以,为了帮助Java初学者快速入门,我们策划了这套“Java软件开发系列精品课程”丛书,所有图书都配有大容量语音视频讲解,旨在为读者创造一个可以眼观手学的高效学习环境。
本书从最基础的内容开始,详细讲述了如何使用Java Web技术进行项目开发。全书共19章,内容全面覆盖了Java Web的编程基础知识及高级特性。在保证知识体系完备、脉络清晰、论述精准深刻的同时,本书尤其注重培养读者的实际动手能力,并结合具体的知识点专门编写了大量的实用程序作为例程,所有例程的源代码均已收录到本书配套光盘中。如果说Java知识像海洋一样茫无际涯,我们愿意通过本书,将之化作涓涓溪流,一路欢歌,流入读者心底。
各章内容概要
下面简要介绍本书的概貌,使读者对本书有一个提纲挚领的了解。
第1章 讲解书中所用的Java Web开发工具Eclipse 3.3、MyEclipse 6.0和Tomcat 6的安装、配置和使用。
第2章 介绍了Web编程中需要了解的其他相关技术,例如Internet、WWW、浏览器和Web服务器等内容。
第3章 讲解Servlet编程的基本步骤、Servlet的生命周期,以及如何使用Eclipse和MyEclipse进行Servlet的开发。
第4章 讲解Servlet如何接收和处理客户通过浏览器发送的请求。
第5章 讲解了JDBC的使用和如何在Tomcat服务器中设置连接池和数据源。本章还详细讲解了Apache Commons DbUtils组件的使用。
第6章 讲解Cookie技术在Web编程中的运用,以及如何在Servlet中编写操作Cookie的代码。
第7章 讲解Servlet会话(Session)编程的相关内容。
第8章 讲解JSP技术、JSP内置对象以及JSP页面之间、JSP与Servlet之间的相互转向。
第9章 讲解JavaBeans技术的概念及其使用。
第10章 讲解如何运用MVC模式进行Java Web开发,同时还介绍了目前流行的基于MVC的Java Web开发框架。
第11章 讲解JSP Expression Language(JSP表达式语言,JSP EL)。
第12章 讲解了定制标记库的内容,以及在Java Web应用中如何编写定制标记库。
第13章 讲解JSTL核心标记的使用。
第14章 讲解Servlet中的监听器(Listener)技术。
第15章 讲解Servlet过滤器(Filter)技术。
第16章 讲解如何使用Apache Commons FileUpload实现文件上传,同时介绍了Java Mail和如何运用Apache Commons Email组件发送邮件。
第17章 介绍DAO设计模式和分页显示,同时还讲解了Displaytag与Pager标记库。
第18章 讲解与Java Web编程有关的字符集和编码方法,还讲解了如何应对Java Web编程中出现的各种中文乱码问题。
第19章 讲解Java Web应用的目录结构和web.xml文件中主要元素的含义。
本书的范例程序
本书一共讲解了20多个Java Web应用的实例程序,并通过对“网络留言本”项目的迭代开发演示了Java Web开发中主要技术的综合运用。
(1)hello项目,熟悉Eclipse的环境,体验在Eclipse中如何快速方便地进行Java应用程序的开发。
(2)webserver项目,编写一个Java Web服务器,加深对HTTP协议的认识。
(3)webproject1项目,演示利用MyEclipse插件如何创建Java Web项目和编写Servlet文件。
(4)webproject2项目,演示如何通过HttpServletRequest对象的getParameter方法获取客户浏览器发送过来的表单数据。
(5)fckeditordemo项目,演示FCKeditor组件的使用。
(6)jdbcexample项目,操作Oracle数据库的例子。
(7)pooling项目,演示如何编写实现一个数据库连接池。
(8)webproject3项目,演示Java Web编程中关于Cookie的核心代码。
(9)webproject4项目,演示HttpSession类提供的主要方法。
(10)shoppingcart项目,演示如何使用会话功能实现网络购物车功能。
(11)webproject5项目,演示如何使用Eclipse和MyEclipse开发JSP页面,同时实现了两种风格的网页计数器。
(12)webproject6项目,演示如何在JSP页面中运用JavaBeans。
(13)webproject7项目,演示JSP EL的用法。
(14)webproject8项目,演示编写定制标记库的基本步骤和方法。
(15)webproject10项目,演示如何编写能够实时统计当前网站在线人数的程序。
(16)webproject11项目,使用Servlet过滤器技术,编写能解决页面传递中文参数乱码问题的程序。
(17)webproject12项目,演示Apache Commons FileUpload组件实现文件上传,同时演示了使用Apache Commons EMail组件实现邮件发送。
(18)guestbook v1.0项目,通过使用JDBC、HTML和Servlet技术,实现网络留言本。
(19)guestbook v1.1项目,修改网络留言本,把获得数据库连接的方式改造成通过连接池获取数据库连接。
(20)guestbook v1.2项目,修改网络留言本,把操作数据库的代码修改成使用DbUtils类库。
(21)guestbook v1.3项目,完全使用JSP技术实现网络留言本。
(22)guestbook v1.4项目,使用JSP和JavaBeans技术实现网络留言本。
(23)guestbook v1.5项目,使用MVC模式,运用JSP、Servlet和JavaBeans技术实现网络留言本。
(24)guestbook v1.6项目,改进网络留言本,在JSP页面中使用JSP EL和JSTL的Core标记库。
(25)guestbook v1.7项目,改进网络留言本,使用Servlet过滤器来实现对留言内容的管理功能。
(26)guestbook v1.8项目,改进网络留言本,使用DAO设计模式、Displaytag和Pager标记库实现留言的分页显示。
这本书是否适合你
本书面向所有准备学习或者正在开发Java Web应用的读者。如果你是新手,建议严格按照本书的先后顺序来学习。如果你是有经验的熟手,由于书中提炼了大量实际开发中经常遇到的疑难杂症并给出解决方案,所以本书可以作为实用的技术参考。
联系作者
本书内容涵盖广而深,尽管我们尽了最大努力,但难免会存在错误和疏漏之处,为此我们在http://www.v512.com上给出了专门的勘误页,读者也可以通过信箱liuwei8809@ 163.com提交bug信息和对本书的意见建议。我们真诚希望能得到广大读者的反馈信息,我们将认真阅读所有的E-mail,并给予细致回复。
文摘插图: