《Java TCP/IP应用开发详解》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:飞思科技产品研发中心编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2002
  • ISBN:7505373668
  • 页数:416 页
图书介绍:本书详细介绍了基于TCP/IP和与Socket有关网络编程,是J2EE框架中的基础部分,围绕着数据如何在分层结构中的传输而展开。

第1章 TCP/IP基础 3

1.1 网络分类 3

1.2 TCP/IP技术模型 3

第一篇 Java网络编程基础 3

1.2.1 OSI中的层与TCP/IP的协议 4

1.2.2 TCP/IP协议的功能 4

1.2.3 IP协议与TCP协议 4

第2章 Java安全模型 9

2.1 Java安全特性概述 9

2.1.1 安全架构 9

2.1.2 密码系统架构 10

2.1.3 安全相关工具 11

2.2 Applet的安全模型 11

2.2.1 Applet的安全限制 11

2.2.2 扩充Applet的权限 13

2.3.1 应用程序的默认超级权限 17

2.3 应用程序的安全模型 17

2.3.2 建立自己的策略文件 19

2.4 代码和文档的安全传输 23

2.4.1 代码和文档的安全 23

2.4.2 工具和API 24

2.5 使用工具实现安全的文件传输 25

2.5.1 文件发送 25

2.5.2 文件接收 28

2.6 使用工具实现代码传输的安全 30

2.6.1 发送代码 30

2.6.2 接收代码 31

2.7 使用API实现数字签名 32

2.7.1 生成一个数字签名 32

2.7.2 解析数字签名 33

2.8 实现自己定义的权限控制 35

3.1 创建线程 43

第3章 多线程网络编程 43

3.2 线程的状态 44

3.2.1 线程的运行状态 44

3.2.2 休眠 44

3.2.3 wait、notify与notifyAll 46

3.3 在线程间安全地交流信息 48

3.3.1 Volatile关键字 49

3.3.2 Synchronized关键字 49

3.3.3 死锁问题 50

第4章 异常机制 53

4.1 什么是异常 53

4.2 使用try与catch关键字 53

4.3 finally关键字 54

4.4 异常栈 55

4.5 异常类 56

4.6 异常匹配 57

4.7 Throws关键字 58

4.8 写自己的异常类 59

4.9 异常处理的设计原则 61

第5章 可视化用户界面开发 63

5.1 图形界面的基本API 63

5.1.1 Java的组件 63

5.1.2 AWT的容器 64

5.1.3 Java的布局管理器 66

5.1.4 AWT中的事件 72

5.2 使用Swing组件 78

5.2.1 Swing组件概览 78

5.2.2 使用顶级容器 79

5.2.3 使用中间容器 81

5.2.4 使用底层组件 90

5.3 使用Forte工具 91

6.1 关于流 97

第二篇 Java的流 97

第6章 文件流 97

6.2 字符流与字节流 98

6.2.1 字符流 98

6.2.2 字节流 99

6.3 比较父类中的方法 99

6.4 选择合适的流 100

6.5 Copy程序实例 101

6.6 File类 103

6.6.1 分隔符与路径 103

6.6.2 目录与文件 105

第7章 使用管道流 107

7.1 理解管道流 107

7.2 管道操作文件实例 108

第8章 连接数据源 113

8.1 合并文件 113

8.2 使用枚举类 115

第9章 过滤流 119

9.1 DataInputStream与DataOutputStream 119

9.2 BufferedInputStream与BufferedOutputStream 122

9.3 CheckedInputStream和CheckedOutputStream 124

9.4 PushbackInputStream 125

9.5 打印流 127

第10章 对象的序列化 129

10.1 理解对象的序列化 129

10.2 编写实现了序列化的类 130

10.3 ObjectInputStream与ObjectOutputString类中的方法 132

10.4 操作多项相同信息 133

10.5 transient方法 134

第11章 网络中的流 137

11.1 如何使用Java获取网上资源 137

11.1.1 得到HTML的流 137

11.1.2 显示HTML文档 138

11.2 从网络上获取图像 139

11.3 读取网络中的表信息 140

第12章 压缩流 145

12.1 压缩工具包 145

12.1.1 ZipFile类与ZipEntry类 145

12.1.2 ZipInputStream类与ZipOutputStream类 145

12.2 一个解压缩的例子 146

12.3 一个压缩程序的例子 147

第13章 中文处理问题 151

13.1 汉字编码的常识 151

13.2 什么是Java的中文问题 151

13.3 中文的显示过程 152

13.4 编码转换函数 152

13.5 查看系统默认编码格式 153

14.1 C/S技术模型 159

第14章 基于C/S模型的网络开发 159

第三篇 Servlet技术的应用 159

14.2 基于TCP/IP的C/S技术模型 160

第15章 基于C/S模型的Java实现 165

15.1 hello world程序 165

15.2 用Java实现Socket模型 170

15.2.1 Socket的运行过程 170

15.2.2 Java对Socket的运行过程实现 170

15.3 echo程序 171

15.4 自定义协议的C/S程序 174

15.4.1 任务描述 174

15.4.2 构造协议类employProtocal 175

15.5 编写多线程的服务器程序 182

第16章 在客户端使用图形界面 185

16.1 图形客户端的echo程序 185

16.2 Applet图形客户端 188

17.1 聊天室程序的需求分析 193

第17章 聊天室实例程序 193

17.2 聊天室程序的代码分析 194

17.3 生成GUI客户端 206

18.1 HTTP的概念 210

17.4 留给读者的任务 218

第18章 HTTP应用开发 219

18.2 非持久性和持久性连接 220

18.2.1 非持久性连接 220

18.2.2 持久性连接 221

18.3 HTTP消息格式 221

18.4 构造一个HTTP服务器 223

18.5 构造一个HTTP的代理服务器 233

第19章 基于TCP的FTP开发 241

19.1 RFC 959简介 241

19.1.1 RFC 959目录解析 241

19.1.2 FTP的术语与参考模型 242

19.1.3 FTP标准模型 244

19.2 FTP中的数据 244

19.3 FTP命令 245

19.3.1 访问控制命令 245

19.3.2 传输参数命令 247

19.3.3 FTP服务命令 249

19.4 FTP回应 255

19.5 RFC 959的最小实现 256

19.6 回应的次序 256

19.7 状态图表集 259

19.8 典型场景 260

第20章 基于UDP协议的开发 261

20.1 UDP协议标准 261

20.2 与数据报相关的类 261

20.3 第一个UDP实例 264

20.4 多点传输 268

20.5 多点传输的例子 269

20.6 OICQ程序与UDP 271

第21章 基于JavaMail的邮件系统 273

21.1 邮件如何传输 273

21.2 邮件消息模型 274

21.3 SMTP与POP3协议 275

21.3.1 SMTP协议 275

21.3.2 POP3协议 276

21.4 JAMES服务器安装与分析 277

21.4.1 下载JAMES服务器代码 277

21.4.2 配置JAMES服务器 278

21.4.3 配置邮件客户端 280

21.4.4 SMTP服务分析 283

21.5 发送邮件程序实例 293

21.5.1 构造一个用户注册信息类 293

21.5.2 注册主程序 296

21.5.3 邮件发送程序 298

21.5.4 运行程序 300

21.5.5 邮件程序分析 301

21.6 接收邮件程序实例 303

21.6.1 接收邮件源程序 303

21.6.2 接收邮件步骤分析 305

21.7 邮件发送与接收的过程 306

21.7.1 发送一个带附件的邮件 306

21.7.2 邮件的存储 310

21.7.3 邮件的接收 311

21.8 使用JavaMail的搜索功能 318

21.8.1 搜索标准 319

21.8.2 搜索实现 319

第22章 使用新I/O开发网络应用程序 321

22.1 为什么使用新I/O 321

22.1.1 旧I/O系统的阻塞问题 321

22.1.2 解决阻塞的一般方式 323

22.2 新I/O带来了什么 324

22.3 Buffer的概念与应用 324

22.3.1 什么是Buffer 324

22.3.2 Buffer的结构 325

22.3.3 获得一个Buffer 326

22.3.4 Buffer的子类 326

22.3.5 使用Buffer 329

22.4 字符编码问题 330

22.5 关于Channel 331

22.5.1 Channel是什么 331

22.5.2 Channel类 332

22.5.3 FileChannel 332

22.5.4 Pipe 334

22.5.5 Selector 335

22.5.6 SelectableChannel 338

22.5.7 ServerSocketChannel与SocketChannel 339

22.6 新I/O的综合运用实例 343

22.6.1 编写主程序 343

22.6.2 编写HTTP回应线程 345

22.6.3 异常类应用 350

22.6.4 缓存类应用 351

22.6.5 统计类 352

第23章 RMI 355

23.1 RMI概述 355

23.2 RMI编程实例 355

23.2.1 远程接口的定义 356

23.2.2 远程接口的实现 356

23.2.3 构造一个客户端 358

23.2.4 运行实例 360

第24章 SSL与JSSE 363

24.1 关于SSL 363

24.1.1 为什么使用SSL 363

24.1.2 SSL的具体实现过程 364

24.2 加密的传输过程 365

24.3 JSSE的安装与调试 366

24.3.1 JSSE的安装 366

24.3.2 JSSE定制 368

24.3.3 调试工具 370

24.4 核心的类与接口 371

24.4.1 SSLSocket类和SSLServerSocket类 371

24.4.2 SSLSocketFactory类与SSLServerSocketFactory类 372

24.4.3 SSLSession接口 372

24.4.4 SSLSessionContext接口 372

24.4.5 X509Certificate Class 372

24.5 使用JSSE 372

24.5.1 创建自己的密钥库(Keystore) 372

24.5.2 编写echo程序实例 373

24.5.3 扩展已有的C/S程序 377

24.6 实现安全的Web服务 383

24.7 常见错误分析 386

24.8 构建安全的Mail 388

24.8.1 设置安全的系统属性 388

24.8.2 认证问题 388

24.9 JSSE的参考文档 391

附录A J2SE在REDHAT 7.0下的安装配置 393

A.1 获取安装文件 393

A.2 安装过程 393

A.3 J2SDK 1.4的目录结构 395

A.4 配置J2SDK 1.4环境 396

附录B 安装VMware软件 399

B.1 VMware安装前的准备工作 399

B.2 文件的下载与安装 399

B.3 建立第一个虚拟系统 399

B.4 使用此虚拟系统 404

附录C FTP程序源代码 407