第1章 分布式数据库应用程序设计
1.1 技术概览
1.1.1 理解系统
1.1.2 硬件和网络配置
1.1.3 系统瓶颈
1.1.4 为明天做好准备
1.1.5 将系统连接到一起
1.2 数据库应用程序模型
1.2.1 两层模型
1.2.2 N层模型(3层或更多)
1.2.3 两种模型的对比
1.2.4 移植到多层结构
第2章 数据库API
2.1 技术概览
2.1.1 数据库应用程序的编程技术史
2.2 库存数据库
2.2.1 Schema设计注意事项
2.3 API设计
2.3.1 概述
2.3.2 通过建立接口确定数据库的需求
2.3.3 用序列化对象描述数据库表
2.3.4 从API读取数据
2.3.5 具体实现
2.3.6 小结
2.4 完整的程序代码清单
第3章 RMI服务器
3.1 技术概览
3.2 JDK 1.2和1.1版中的RMI
3.3 应用程序如何找到远程对象:RMI注册
3.4 RMI对象服务器
3.5 系统结构
3.6 文件共享
第4章 Swing客户机
4.1 技术概览
4.1.1 外观和感觉
4.1.2 简单与复杂的比较/剪切和粘贴
4.1.3 单独封装的JFC
4.2 编程理念
4.2.1 做好最坏的打算——控制违例并显示对话框
4.2.2 从GUI启动RMI
4.2.3 用SWing实现线程化
4.2.4 用来自远程对象的数据填充Widgets
4.3 组装真正的客户机程序
4.4 GUI的排序工具函数
4.5 可复用的GUI组件
4.6 将JTable作为动态数据库DataWindow使用
第5章 将Servlet作为客户机使用
5.1 技术概览
5.1.1 典型的Web开发案例
5.2 编程概述
5.2.1 管理
5.2.2 支持
5.2.3 附加的日志
5.3 UnitDbservlet程序
5.3.1 通过Servlet启动RMI
5.3.2 出错处理和远程对象的再连接
5.3.3 通过Servlet访问数据库API
5.3.4 访问本机的API
5.3.5 配置Apache JServ访问Oracle的JDBC
5.3.6 通过Servlet使用JDBC
5.3.7 综合3种方法构建Web应用程序
第6章 命令行客户机
6.1 技术概览
6.2 编程技巧
6.2.1 为StarOffice,Excel,Filemaker和其他应用程序提供
6.2.2 通过命令行传递到字表位
6.2.3 使用Unix工具增强输出和节省编程时间
6.2.4 使用sendmail发送电子邮件
6.2.5 使用GetOpts进行封装
6.3 小结
第7章 软件配置
7.1 技术概览
7.1.1 网络磁盘空间:使用NFS和Samba的应用程序服务器
7.1.2 使用HTTP协议的无状态文件服务
7.2 为多协议访问建立服务器
7.2.1 推荐目录结构
7.2.2 使用NFS/Samba进行配置
7.2.3 使用NFS配置Unix客户机
7.2.4 使用Samba配置Win32客户机
7.2.5 使用HTTP协议配置客户机
7.2.6 使用NFS更新Unix客户机数据和通过Samba更新Win32客户机数据
7.2.7 使用HTTP协议更新客户机的数据
7.3 小结
第8章 多媒体、数据库读写及其他
8.1 技术概览
8.1.1 对象负载平衡
8.2 为BLOB设计的数据库模式
8.3 在API和实现中增加BLOB支持
8.4 基于网络的二进制内容传递
8.4.1 在Servlet中制作漂亮图案——可扩展性问题
8.4.2 多层表单编码——上传文件
8.4.3 Servlet
8.4.4 MIME类型的内容
8.4.5 突发数据
8.4.6 如何在程序中协同工作
8.5 代码清单
第9章 监视工具和系统调用
9.1 技术概览
9.2 用RMI监视使用状态和服务器状态
9.2.1 使用Java进行系统调用
9.2.2 用RMI封装系统调用
附录A Javadoc API文档
A.1 数据库API
A.1.1 Interface UnitDb
A.1.2 Class UnitDbImpl
A.1.3 Class UnitDBServer
A.1.4 Class UnitInfo
A.2 Swing RMI客户机
A.2.1 Class IUDPanel
A.2.2 Class UnitDbClient
A.2.3 Class UnitNode
A.2.4 Class UnitTreeBrowser
A.3 Web客户机
A.3.1 Class GetImageServlet
A.3.2 Class ImageServlet
A.3.3 Class MultiPartReader
A.3.4 Class UnitDbServlet
A.3.5 Class UnitDbCmdLin
A.3.6 Class MonitorPanel
A.3.7 Class MonitorServer
A.3.8 Interface ShellCommand
A.3.9 Class ShellCommandImpl
A.3.10 Class BadWeightException
A.3.11 Class DbUtil
A.3.12 Class QSort
A.3.13 Class StringSplitter
附录B 在SQL中创建本书的模式
附录C Makefile范例