Java XML 编程指南
分類: 图书,计算机/网络,程序设计,Java Java Script J2EE,
作者: 王辉等译
出 版 社: 电子工业出版社
出版时间: 2001-4-1字数: 1130版次: 1版1次页数: 685印刷时间:开本:印次:纸张:I S B N : 9787505366190包装: 平装内容简介
分布式Web应用程序是如今最常见、也最值得投入的一种应用程序,建立Web应用程序的最佳方式是使之成为三层应用程序,从而巧妙地区分出其三个组成部分;用户界面、计算逻辑与数据存储,而Java与XML的组合提供建立三层应用程序的最佳手段。基于以上思想,本书作者面向有经验的程序员和计算机专业的学生,通过开发多个实质性的实用程序,介绍大量与Java,XML,JSP以及XSLT有关技术;本书探讨的复合技术可以分开应用,也可针对不同系统类型以不同方式结合使用。相信读者一定会倍感受益。
作者简介
Alexander Nakhimovsky于1972年获得Lenigrad大学数学硕士学位。1978年获Cornell大学大众语言学博士学位。并辅修了计算机学,在1985年进入Colgate大学的计算机系之前,他曾于Cornell 与SRNY Oswego讲授大众与斯拉夫语言学,他出版了一部关于理论与计算机语言学的专著和多篇文章,多部俄语教科书,一本Nabokov's字典,并与Tom Myers合作出版了“ Javascript Objects ”,Wrox 1998 ,以及“ Professional Java XML Programming with Servlets and JSP ”,Wrox 1999。
Tom于1975年获St.John's学院学士学位,1980年获Pennsylvania大学计算机学博士学位。他在专职从事软件开发与咨询之前,曾于Delaware与Colgate大学教育计算机学,他是“Equations,Models,and Programs:A Mathematical Introduction to Computer Science ”Prentice-Hall Software Serids,1998 的作者,并撰写了多篇关于理论计算机学方面的论文,他还与Alexander Nakhimovsky合作出版了“ Javascript Objects ”,Wrox1998,以及 Professional Java XML Programming with Servlets and JSP “,Wrox1999.
目录
第1章 三层Web应用程序
三层应用程序
一个简单的范例
客户机端
小型服务程序基础
JDBC基础
更好的电话簿
新Servlet类
MiscDB类及其方法
Logger类
LookerUpper类
HtmlWrapper类
Senlet API综述
包
主要角色
装载与实例化
初始化
服务程序的任务:请求与响应
完整的包列表
会话跟踪
小结
第2章 一个通用的三层应用程序
整体设计与Query2
Query2应用程序
用于数据交换的Env类
声明与方法
Env与HTTP请求
根据文本文件与缓冲阅读器建立的构造器
其他Env构造器
Env与Properties
DBHandler与Qery类
引入、声明与变量
DBHandler构造器
查询处理
addQuery()与delQuery()
连接库方法
Query类
RowSequence与MiscDB实用程序
声明与构造器
MiscDB实用程序与结果集合元数据
作为惰性序列的ResultSet对象
getRow()与next()
主服务程序
JDBC综述: Statement、ResultSet、元数据
Statement接口
PreparedStatement扩展了Statement
数据类型
PreparedStatement的setXXX()方法
ResultSet
JDBC的元数据接口
ResultSetMetaData
小结
第3章 三层应用程序的外壳
自己做的三层应用程序(版本1)
版本1a:编辑Query2
Query3:带有会话的三层应用程序
应用程序指定的文件
Query3服务程序综述
doPost()代码
在Query3中建立与使用会话
HTML生成
根据元素建立页:wrapPage()
ECS基础
扩展ECS包
输出指定类型的页
模板文件
Query3中的模板文件与HTML输出
模板文件与JavaServer Pages
使用Query3建立一个应用程序
这是一个应用程序服务器吗?
连接组合与DBHandler的其余部分
问题是什么?可伸缩性与性能
安全性与线程安全
连接库与高速缓存
整体设计与介绍顺序
Cache类
高速缓存范例1:阶乘
高速缓存范例2:二项式系数
属性文件与属性组
DBC0nnectionManager
ConnectionPoo1类
在DBHandler中使用连接组合
小结
第4章 语言、文法与分析程序
用于查询输出的模板文件
微型语言的替换
查询输出模板的代码
正式语言与文法规则
英语范例
文法与分析程序
上下文无关与上下文相关的文法
一小段历史
EBNF符号
一个范例:.ini文件作为一种正式语言
文法规则、语义约束与词汇规则
作为一种正式语言的模板文件
分析程序综述
一个范例
分析程序、树与词汇分析器
ParseTree类
将树写入一个字符串
词汇分析器
支付:一个小购物卡
大学书店
Env.addBufferedReader()的新代码
.ini文件
用户界面与模板文件
小结
第5章 XML初步
XML简介
XML易于阅读
XML是一种定义标记语言的工具
XML文档描述了它们自己的语法
XML可以在浏览器中显示
XML是对象的一种序列化格式
XML是一种很好的多层应用程序黏合剂
XML是一种重要的授权技术
XML与SOML;XHTML与HTML
结构合理约束
一个HTML/XHTML/XML页面
一个SOML元素声明
终止标注、空元素与分析程序
分析程序与规范
HTML与XHTML:区别的总结
XML文档
文档、处理器与应用程序
主要的数据类型:CDATA与PCDATA
逻辑结构
文档语法
注释、CDATA部分与PI
PI的替换
文档的本征部分与名称空间
元素生成
编程中的名称空间
XML中的名称冲突
前缀解决方案
Web上的完全限定名
名称空间与DTD
名称空间可以任意使用吗?
XML l.0中的新生成与改变
扩展元素与属性名称
小结
第6章 实体与DTD
引言
物理实体
对字符实体的引用
参数与普通实体
实体声明与引用
实体定义:内部与外部实体
非XML数据的外部实体:Notations
五个预声明实体与两个未命名实体
DOCTYPE声明
使用实体的范例
CDATA的助记名称
字符的助记名称
包含文件
作为模块的外部参数实体
模块化XHTML
条件部分与外部参数实体
作为宏的内部参数实体
元素与属性声明
元素声明
属性—列表声明
DTD的缺陷
文档、处理器与DTD
非确认性的分析程序
确认性分析程序
空白区的处理
实体引用替换过程
小结
第7章 DOM、SAX与分析程序
分析XML文档
现有的分析程序,以及我们应该使用哪一种?
DOM与SAX
输入源与文档对象
一个范例应用程序:DocWalker
应用程序的结构
DOCWaalkerServlet
Docwalker
写出XML字符串
模板文件
XmlManipulator:剪切、复制与粘贴
DOM接口
DOM Level l
XML、DOM与语言联编
IDL的范例与Java联编
Java联编的结构
小结
第8章 SAX处理、Sun分析程序与一致性研究
EchoAsHtml
Sun的Java XML指南
EchoAsHtm1、三层版本
EchoAsHtml类
HandlerBase方法
总结与评述
SAX评述
SUN工具包的评述
XML处理器的一致性研究
小结
第9章 集成XML微型语言
SAXMinilanguage
算术表达式语言
二堆栈办法
SAXMinilanguage
算术表达式Minilanguage
驱动程序:客户机与服务程序
xnd2DBTables
Xml2DBTables的DTD
xml2DBTables类
XML与关系型数据表格
小结
第10章 JSP与JavaBean
引言
JSP的主要特性
它的显示
工作原理
将JSP转换为服务程序
JSP语法与语义
非XML语法
行为元素
设计考虑
与客户机的会话
具有JSP与JavaMail的Birthday应用程序
入口点:birthday.htm
JSP主页:birthday.jsp
输出模板文件
部件对象的内部:BithdayBean.java
程序总结
JSP与用于数据模板的SUBST微型语言
小结
第11章 多支持系统的实现:通用工具
引言
应用程序综述
测试
XML配置子系统
序列与数据源
部件对象与JavaMail API
电子邮件的传输与存储协议
JavaMail的结构
启动一个会话
RowSeq及其派生
RowSeq
DBRowSequenct
MailSequence
过滤与映射
RowViewSource
更新更好的Env
递归Env
XML配置
主要概念:三个递归数据结构
XmlConfig子系统综述
mailConfig.xml与它定义的Env
XmlConfig
根据Env建立部件对象
根据XML文档建立部件对象
从DOM到Env
XmlConfigBase.java
小结
第12章 多支持系统的实现:具体构造
从客户机到JSP主页
HTML入口点
JSP主页
JSP输出页
主部件对象
引入、类层次变量与构造器
doLogin()与初始化
doCommand()
msgList命令
显示、发送以及删除消息的方法
XmlConfigBase的重载方法
结论
小型部件对象
MessageSender
MessageMaker
RowViewSource l:MailViewSource
主要构成部分
引入、变量、构造器和setSking()
JavaMail方法
获取消息的方法
删除消息和消息范围的方法
输出方法
RowViewSource 2:DBViewSource
mailSource与databaseSource元素
引入、变量和构造器
对比提纲
ioitSession()、setQuedes()、initDBHandler()
获取行的方法
删除行的方法
小结
第13章 XSLT和XPath
引言
XSLT概述
历史回顾
要点总结
IE5范例
配置XT
三个扩展范例
文档范例
编程范例:Countdown
数据范例:SQL到XSL
XSLT和XPath的细节剖析
XSLT数据模型
XSLT处理模型
XPath概述
XSLT的扩展
更高级的编程范例
嵌套循环
排列
8 QUeens Puzzle
XSLT的用途
小结
跋
附录A 安装简单说明
附录D 相关资源
附录C HTTP
附录D JDBC API Reference
附录E JSDK API Beference
附录F javaSenerPages语法简介
附录G 核心javaMail/JAFAHRefGrence
附录H 可扩展标记语言(XML)1.0规范
附录I XML中的名称空间
附录J DOM l核心:IDL与Java语言联编
附录K SAX API Reference
附录L 规则表达式
附录M 技术支持和勘误表