当前位置: 代码迷 >> Web前端 >> Java Web开发详解――XML+DTD+XML Schema+XSLT+Servlet 3.0+JSP 2.2深入辨析与实例应用
  详细解决方案

Java Web开发详解――XML+DTD+XML Schema+XSLT+Servlet 3.0+JSP 2.2深入辨析与实例应用

热度:761   发布时间:2012-07-18 12:05:40.0
Java Web开发详解――XML+DTD+XML Schema+XSLT+Servlet 3.0+JSP 2.2深入剖析与实例应用
《Java Web开发详解――XML+DTD+XML Schema+XSLT+Servlet 3.0+JSP 2.2深入剖析与实例应用》
基本信息
作者: 孙鑫 [作译者介绍]
出版社:电子工业出版社
ISBN:9787121167683
上架时间:2012-6-12
出版日期:2012 年5月
开本:16开
页码:889
版次:1-1
所属分类: 计算机 > 软件与程序设计 > JAVA(J#) > 综合
计算机 > 计算机网络 > Web Server > 综合
更多关于 》》》《Java Web开发详解――XML+DTD+XML Schema+XSLT+Servlet 3.0+JSP 2.2深入剖析与实例应用》

内容简介
计算机书籍
  《java web开发详解――xml+dtd+xml schema+xslt+servlet 3.0+jsp 2.2深入剖析与实例应用》共分4篇,从xml、xml schema、xslt、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地引导读者快速掌握java web开发。本书内容全面,涵盖了从事java web开发所应掌握的所有知识,同时还讲解了最新的servlet 3.0和jsp 2.2规范新增的特性。在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。
  《java web开发详解――xml+dtd+xml schema+xslt+servlet 3.0+jsp 2.2深入剖析与实例应用》语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很多例子都是目前web开发中经常使用的功能,具有相当高的实用价值。本书不仅可以作为java web开发的学习用书,还可以作为从事java web开发的程序员的参考用书和必备手册。
  此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上。
目录
《java web开发详解――xml+dtd+xml schema+xslt+servlet 3.0+jsp 2.2深入剖析与实例应用》
第i篇 xml篇
第1章 xml 2
1.1 xml的起源 2
1.2 w3c介绍 2
1.3 关于xml的两个问题 3
1.4 xml与html的比较 5
1.4.1 xml将数据与显示分开 5
1.4.2 xml对文档的格式要求更加严格 6
1.4.3 xml有且只能有一个根元素 6
1.5 xml的编辑工具 7
1.6 xml文档 10
1.6.1 xml文档的结构 10
1.6.2 在xmlspy中创建xml文档 12
1.6.3 xml声明 12
1.6.4 文档类型声明 13
1.6.5 元素 14
1.6.6 注释 17
1.6.7 处理指令 18
1.6.8 空白处理 19

.1.6.9 行尾处理 19
1.6.10 语言标识 19
1.7 格式良好的xml 20
1.8 小结 21
第2章 dtd 22
2.1 在xml文档中引入dtd 22
2.2 dtd的结构 24
2.2.1 元素类型声明 25
2.2.2 实体声明 28
2.2.3 属性表声明 31
2.2.4 记号声明 38
2.3 在xmlspy中创建dtd文档 38
2.4 有效的xml 39
2.5 xml处理器/解析器 39
2.6 小结 40
第3章 xml名称空间 41
3.1 声明名称空间 41
3.2 名称空间在元素和属性中的运用 42
3.2.1 名称空间在元素中的运用 42
3.2.2 默认名称空间 44
3.2.3 名称空间在属性中的运用 45
3.3 名称空间和dtd 46
3.4 小结 47
第4章 xml schema 49
4.1 xml schema推荐标准 49
4.2 xml schema文档一瞥 50
4.3 xml schema与dtd的比较 50
4.4 术语明晰 52
4.5 xml schema概述 53
4.5.1 元素和属性的声明 53
4.5.2 元素和属性的类型 53
4.5.3 简单类型 54
4.5.4 复杂类型 55
4.5.5 全局声明和局部声明 56
4.5.6 模式与名称空间 57
4.5.7 在实例中引用模式文档 62
4.5.8 注解 63
4.6 在xmlspy中创建模式文档 64
4.7 模式文档的验证 65
4.8 小结 66
第5章 使用dom、sax和jaxp解析xml文档 67
5.1 dom、sax和jaxp概述 67
5.2 使用dom解析xml文档 68
5.2.1 dom结构模型 69
5.2.2 dom树中的节点类型 71
5.2.3 dom解析器工厂和dom解析器 75
5.2.4 jaxp的错误类和异常类 77
5.2.5 使用dom解析xml文档的实例 78
5.3 使用sax解析xml文档 89
5.3.1 sax的处理机制 90
5.3.2 配置sax解析器 93
5.3.3 sax解析器工厂 94
5.3.4 sax的异常类 95
5.3.5 errorhandler接口 97
5.3.6 使用sax解析xml文档的实例 98
5.4 使用xml schema来验证xml文档 107
5.4.1 模式工厂和验证 107
5.4.2 与解析api的集成 112
5.4.3 获取类型信息 112
5.5 小结 115
第6章 使用jdom解析xml文档 116
6.1 下载并配置jdom 116
6.2 jdom api介绍 116
6.3 使用jdom访问xml文档的实例 120
6.4 小结 122
第7章 使用dom4j解析xml文档 123
7.1 下载并配置dom4j 123
7.2 dom4j api介绍 123
7.3 使用dom4j访问xml文档的实例 127
7.3.1 使用xml schema来验证xml文档 127
7.3.2 使用访问者模式遍历xml文档 128
7.3.3 使用dom4j的事件模型来访问xml文档 130
7.4 小结 133
第8章 解析名称空间 134
8.1 dom和名称空间 134
8.2 sax和名称空间 137
8.3 jdom和名称空间 140
8.4 dom4j和名称空间 143
8.5 小结 145
第9章 xslt 1.0 146
9.1 xslt概述 146
9.2 xalan处理器 150
9.3 模板规则 151
9.4 (xsl:apply-templates)元素 152
9.5 (xsl:value-of)元素 152
9.6 (xsl:for-each)元素 155
9.7 匹配节点的模式 156
9.8 mode属性 157
9.9 内置的模板规则 158
9.10 对空白的处理 160
9.11 xpath语言 160
9.11.1 xpath上下文 160
9.11.2 位置路径 161
9.11.3 表达式 165
9.11.4 核心函数库 167
9.12 创建结果树 170
9.12.1 创建元素和属性 170
9.12.2 创建文本 175
9.12.3 创建处理指令 176
9.12.4 创建注释 176
9.12.5 复制节点 177
9.12.6 输出格式化的数字 178
9.13 条件处理 187
9.13.1 (xsl:if) 187
9.13.2 (xsl:choose) 188
9.14 排序 189
9.15 变量和参数 192
9.15.1 变量 192
9.15.2 参数 195
9.16 命名模板 195
9.17 合并样式表 197
9.17.1 导入样式表 197
9.17.2 包含样式表 198
9.18 模板规则冲突的解决 198
9.19 (xsl:output)元素 200
9.19.1 指定输出文档的格式 200
9.19.2 输出xml声明 201
9.19.3 输出文档类型定义 201
9.19.4 输出cdata段 202
9.19.5 指定文档缩进 203
9.19.6 指定媒体类型 204
9.20 xslt中的函数 204
9.21 数字格式化 204
9.22 查询和分组 206
9.23 处理多个输入文档 214
9.24 jaxp中的xslt api 217
9.24.1 转换器工厂 217
9.24.2 transformer和templates 217
9.24.3 一个实例 219
9.25 在xmlspy中创建样式表文档 221
9.26 小结 222
第10章 xslt 2.0 223
10.1 saxon处理器 224
10.2 xpath 2.0 224
10.2.1 一切都是序列 224
10.2.2 for表达式 225
10.2.3 条件表达式 226
10.2.4 限定性表达式 228
10.2.5 类型 229
10.2.6 日期和时间 230
10.2.7 函数 231
10.3 xslt 2.0的新特性 234
10.3.1 分组 234
10.3.2 隐含文档节点(临时树) 239
10.3.3 使用(xsl:result-document)元素输出多个文件 240
10.3.4 (xsl:value-of)元素的改进 242
10.3.5 字符映射 243
10.3.6 自定义样式表函数 244
10.4 小结 245
第ii篇 servlet篇
第11章 servlet与tomcat 247
11.1 web技术的发展 247
11.2 servlet与servlet容器 248
11.3 servlet容器的分类 249
11.4 tomcat简介 250
11.5 tomcat的安装与配置 250
11.5.1 tomcat的目录结构 252
11.5.2 运行tomcat 253
11.5.3 tomcat启动分析 256
11.6 tomcat的体系结构 258
11.7 tomcat的管理程序 260
11.8 小结 262
第12章 servlet技术 263
12.1 servlet api 263
12.1.1 servlet接口 264
12.1.2 servletrequest和servletresponse 265
12.1.3 servletconfig 267
12.1.4 一个简单的servlet 268
12.1.5 genericservlet 275
12.1.6 httpservlet 275
12.1.7 httpservletrequest和httpservletresponse 277
12.2 几个实例 279
12.2.1 实例一:welcomeservlet 279
12.2.2 实例二:outputinfoservlet 285
12.2.3 实例三:loginservlet 289
12.3 servlet异常 292
12.3.1 servletexception类 292
12.3.2 unavailableexception类 293
12.4 servlet生命周期 293
12.5 servlet上下文 294
12.5.1 servletcontext接口 295
12.5.2 页面访问量统计实例 297
12.6 请求转发 299
12.6.1 requestdispatcher接口 300
12.6.2 得到requestdispatcher对象 300
12.6.3 请求转发的实例 301
12.6.4 sendredirect()和forward()方法的区别 305
12.7 小结 306
第13章 web应用程序的部署 307
13.1 配置任意目录下的web应用程序 307
13.2 war文件 310
13.3 与servlet配置相关的元素 311
13.3.1 (servlet)元素及其子元素 311
13.3.2 (servlet-mapping)元素及其子元素 313
13.4 一个实例 315
13.5 小结 319
第14章 数据库访问 320
14.1 jdbc驱动程序的类型 320
14.1.1 jdbc-odbc桥 321
14.1.2 部分本地api部分java驱动程序 321
14.1.3 jdbc网络纯java驱动程序 321
14.1.4 本地协议的纯java驱动程序 322
14.2 安装数据库 322
14.3 下载mysql jdbc驱动 325
14.4 jdbc api 326
14.4.1 加载并注册数据库驱动 326
14.4.2 建立到数据库的连接 329
14.4.3 访问数据库 330
14.4.4 事务处理 354
14.4.5 可滚动和可更新的结果集 361
14.5 jdbc数据源和连接池 364
14.6 mysql对中文的处理 369
14.7 小结 370
第15章 会话跟踪 371
15.1 用于会话跟踪的技术 371
15.1.1 ssl会话 372
15.1.2 cookies 372
15.1.3 url重写 373
15.2 java servlet api的会话跟踪 373
15.2.1 httpsession接口 374
15.2.2 session的生命周期 375
15.2.3 cookie的应用 387
15.2.4 session和cookie的深入研究 396
15.3 session的持久化 399
15.3.1 标准的session管理器实现 399
15.3.2 持久的session管理器实现 400
15.4 小结 403
第16章 servlet的异常处理机制 405
16.1 声明式异常处理 405
16.1.1 http错误代码的处理 406
16.1.2 java异常的处理 409
16.2 程序式异常处理 412
16.2.1 在try-catch语句中处理异常 412
16.2.2 使用requestdispatcher来处理异常 415
16.3 小结 417
第17章 开发线程安全的servlet 418
17.1 多线程的servlet模型 418
17.2 线程安全的servlet 418
17.2.1 变量的线程安全 419
17.2.2 属性的线程安全 427
17.3 singlethreadmodel接口 429
17.4 小结 430
第iii篇 jsp篇
第18章 jsp技术 432
18.1 jsp简介 432
18.2 jsp的运行机制 432
18.3 jsp的语法 437
18.3.1 指令元素(directive element) 437
18.3.2 脚本元素(scripting element) 441
18.3.3 动作元素(action element) 443
18.3.4 注释 450
18.4 jsp的隐含对象 451
18.4.1 pagecontext 451
18.4.2 out 452
18.4.3 page 453
18.4.4 exception 453
18.5 对象和范围 454
18.6 留言板程序 456
18.7 留言板管理程序 464
18.8 jsp文档 469
18.8.1 jsp文档的标识 470
18.8.2 jsp文档中的元素语法 470
18.9 小结 474
第19章 jsp与javabean 475
19.1 javabean简介 475
19.1.1 属性的命名 476
19.1.2 属性的类型 477
19.2 在jsp中使用javabean 478
19.2.1 (jsp:usebean) 478
19.2.2 (jsp:setproperty) 479
19.2.3 (jsp:getproperty) 480
19.2.4 示例 480
19.3 网上书店程序 484
19.4 小结 505
第20章 jsp开发的两种模型 506
20.1 模型1 506
20.2 模型2 510
20.3 mvc模式的实现总结 515
20.4 小结 515
第21章 标签库(tag library) 516
21.1 标签库api 516
21.1.1 标签的形式 516
21.1.2 tag接口 517
21.1.3 iterationtag接口 519
21.1.4 bodytag接口 520
21.2 标签库描述符 521
21.2.1 (taglib)元素 522
21.2.2 (validator)元素 523
21.2.3 (listener)元素 523
21.2.4 (tag)元素 524
21.2.5 (tag-file)元素 526
21.2.6 (function)元素 527
21.3 传统标签的开发 528
21.3.1 实例一:(hello)标签 528
21.3.2 实例二:(max)标签 531
21.3.3 实例三:(greet)标签 533
21.3.4 实例四:(switch)标签 535
21.3.5 实例五:(iterate)标签 539
21.4 简单标签的开发 545
21.4.1 simpletag接口 545
21.4.2 实例一:(welcome)标签 546
21.4.3 实例二:(max_ex)标签 548
21.5 自定义标签开发总结 550
21.6 小结 550
第22章 表达式语言(el) 551
22.1 语法 551
22.1.1 “[ ]”和“.”操作符 551
22.1.2 算术操作符 552
22.1.3 关系操作符 552
22.1.4 逻辑操作符 553
22.1.5 empty操作符 553
22.1.6 条件操作符 553
22.1.7 圆括号 553
22.1.8 操作符的优先级 553
22.2 隐含对象 553
22.3 命名变量 555
22.4 保留的关键字 555
22.5 函数 555
22.6 小结 556
第23章 jsp标准标签库(jstl) 557
23.1 jstl简介 557
23.2 配置jstl 558
23.3 core标签库 558
23.3.1 一般用途的标签 559
23.3.2 条件标签 563
23.3.3 迭代标签 565
23.3.4 url相关的标签 568
23.4 i18n标签库 572
23.4.1 国际化标签 572
23.4.2 格式化标签 577
23.5 sql标签库 585
23.5.1 (sql:setdatasource) 585
23.5.2 (sql:query) 586
23.5.3 (sql:param) 589
23.5.4 (sql:dateparam) 590
23.5.5 (sql:update) 591
23.5.6 (sql:transaction) 592
23.6 xml标签库 593
23.6.1 核心操作 594
23.6.2 流程控制 597
23.6.3 转换操作 600
23.7 functions标签库 602
23.7.1 fn:contains 602
23.7.2 fn:containsignorecase 603
23.7.3 fn:startswith 604
23.7.4 fn:endswith 604
23.7.5 fn:indexof 605
23.7.6 fn:replace 606
23.7.7 fn:substring 606
23.7.8 fn:substringbefore 607
23.7.9 fn:substringafter 608
23.7.10 fn:split 608
23.7.11 fn:join 609
23.7.12 fn:tolowercase 610
23.7.13 fn:touppercase 610
23.7.14 fn:trim 611
23.7.15 fn:escapexml 611
23.7.16 fn:length 612
23.8 小结 612
第24章 标签文件(tag files) 614
24.1 标签文件的语法 614
24.2 一个简单的标签文件 614
24.3 标签文件的隐含对象 617
24.4 标签文件的指令 618
24.4.1 tag指令 618
24.4.2 attribute指令 619
24.4.3 variable指令 620
24.5 标签文件实例讲解 621
24.5.1 实例一:(welcome)标签 621
24.5.2 实例二:(tohtml)标签 622
24.6 (jsp:invoke)动作元素 624
24.7 (jsp:dobody)动作元素 624
24.8 小结 624
第iv篇 应用篇
第25章 servlet监听器 626
25.1 监听器接口 626
25.2 servletcontextlistener接口 627
25.3 httpsessionbindinglistener接口 628
25.4 在线人数统计程序 629
25.5 小结 636
第26章 filter在web开发中的应用 637
26.1 过滤器概述 637
26.2 filter api 638
26.2.1 filter接口 638
26.2.2 filterconfig接口 639
26.2.3 filterchain接口 639
26.3 过滤器的部署 639
26.4 过滤器的开发 641
26.5 对用户进行统一验证的过滤器 643
26.6 对请求和响应数据进行替换的过滤器 649
26.7 对响应内容进行压缩的过滤器 657
26.8 小结 664
第27章 中文乱码问题与国际化 665
27.1 中文乱码问题产生的由来 665
27.1.1 常用字符集 665
27.1.2 对乱码产生过程的分析 667
27.2 中文乱码问题的解决方案 669
27.3 使用过滤器解决中文问题 671
27.4 让tomcat支持中文文件名 675
27.5 国际化与本地化 675
27.5.1 locale 676
27.5.2 资源包 678
27.5.3 消息格式化 680
27.5.4 编写国际化的web应用程序 681
27.6 小结 684
第28章 开发安全的web应用程序 685
28.1 概述 685
28.2 理解验证机制 686
28.2.1 http basic authentication 686
28.2.2 http digest authentication 687
28.2.3 https client authentication 687
28.2.4 form based authentication 687
28.3 声明式安全 688
28.3.1 (security-constraint)元素 688
28.3.2 多个安全约束的联合 690
28.3.3 (login-config)元素 692
28.3.4 基本验证的实现 692
28.3.5 基于表单验证的实现 694
28.3.6 使用数据库保存用户名和密码 696
28.4 程序式安全 700
28.5 sql注入攻击的防范 702
28.6 小结 704
第29章 使用eclipse开发web应用 705
29.1 eclipse介绍 705
29.1.1 下载并安装eclipse 705
29.1.2 eclipse开发环境介绍 706
29.1.3 配置eclipse 707
29.2 文件的上传 710
29.2.1 基于表单的文件上传 710
29.2.2 文件上传格式分析 711
29.2.3 commons-fileupload组件 712
29.2.4 文件上传实例 713
29.3 文件的下载 724
29.4 给图片添加水印和文字 731
29.5 小结 734
附:在eclipse中导入本章的项目 734
第30章 web应用程序开发实例 736
30.1 图像的缩放 736
30.2 如何动态生成验证码 739
30.3 如何避免表单的重复提交 743
30.3.1 在客户端避免表单的重复提交 743
30.3.2 在服务器端避免表单的重复提交 746
30.4 小结 752
第31章 使用log4j进行日志操作 753
31.1 log4j介绍 753
31.1.1 logger组件 753
31.1.2 appender组件 754
31.1.3 layout组件 755
31.2 使用log4j 757
31.3 log4j使用实例 760
31.4 ndc和mdc 773
31.5 小结 775
第32章 使用ant辅助web应用程序开发 776
32.1 ant介绍 776
32.2 安装并配置ant 777
32.2.1 下载并安装ant 777
32.2.2 设置ant的运行环境 777
32.3 编写ant的构建文件 777
32.3.1 准备工作 778
32.3.2 工程((project)) 781
32.3.3 目标((target)) 781
32.3.4 任务 783
32.3.5 类似路径结构(path-like structure) 796
32.3.6 引用(reference) 797
32.4 部署到tomcat 798
32.5 运行ant 801
32.6 小结 801
第33章 servlet 3.0新特性详解 802
33.1 新增的注解 802
33.1.1 @webservlet注解 803
33.1.2 @webfilter注解 804
33.1.3 @webinitparam注解 806
33.1.4 @weblistener注解 806
33.1.5 @multipartconfig注解 806
33.2 异步处理 807
33.2.1 实例:计算斐波那契数列 809
33.2.2 asynclistener 812
33.3 动态添加和配置web组件 814
33.3.1 实例一:实现servletcontextlistener接口来添加servlet 815
33.3.2 实例二:实现servletcontainerinitializer接口来添加组件 816
33.4 web片段和可插性支持 819
33.4.1 web模块开发 819
33.4.2 解决web模块加载顺序的问题 821
33.5 httpservletrequest 对文件上传的支持 823
33.6 小结 826
第34章 xml和xslt在web开发中的应用 827
34.1 功能概述 827
34.2 程序设计 827
34.2.1 软件架构 827
34.2.2 页面设计 828
34.2.3 数据库设计 840
34.3 程序实现 842
34.3.1 org.sunxin.guestbook 842
34.3.2 org.sunxin.guestbook.beans 843
34.3.3 org.sunxin.guestbook.util 851
34.3.4 org.sunxin.guestbook.parser 854
34.3.5 org.sunxin.guestbook.controller 857
34.3.6 org.sunxin.guestbook.view 878
34.3.7 page.xsl 882
34.3.8 web.xml 888
34.3.9 context.xml 889
34.4 小结 889
(以下内容见配书光盘)
附录a 快速掌握html 890
附录b 解析http 915
附录c server.xml文件 928
附录d web.xml文件 935

本图书信息来源:中国互动出版网
  相关解决方案