第1章 类的处理 1
1.1 类的定义方法 2
范例1-1 类对象的复制 2
范例1-2 类对象的比较 5
范例1-3 支持查找功能的分数类 7
范例1-4 带有自定义异常类的时钟类 12
1.2 静态成员的使用 14
范例1-5 统计内存类变量的个数 14
范例1-6 自动递增的序列号 16
1.3 类反射 17
范例1-7 获取类的元数据信息 17
范例1-8 动态装载类变量 21
1.4 本章小结 23
第2章 字符处理 25
2.1 字符格式化 26
范例2-1 显示所有Unicode字符 26
范例2-2 人民币大写转换 28
范例2-3 货币金额格式化 31
范例2-4 带有样式的文本编辑器 33
范例2-5 字符串对齐 37
范例2-6 替换特定格式的字符串 39
2.2 字符验证 41
范例2-7 验证有效的HTTP网址 41
范例2-8 只能输入汉字的文本框 42
范例2-9 只能输入特定格式的文本框 43
2.3 本章小结 45
第3章 数组与集合 47
3.1 数组处理 48
范例3-1 分词 48
范例3-2 动态调整数组大小 49
范例3-3 生成具有不重复随机数的数组 51
3.2 集合处理 53
范例3-4 同步队列 53
范例3-5 字符界面的输入 55
范例3-6 支持foreach迭代访问的自定义集合类 57
范例3-7 支持集合元素排序的类 60
范例3-8 矩阵计算 62
范例3-9 集合分页 65
3.3 本章小结 68
第4章 窗体效果 69
4.1 带有背景图片的窗体 70
范例4-1 带有启动进度条的欢迎窗体 70
范例4-2 平铺图片的窗体背景 72
范例4-3 拉伸图片的窗体背景 74
4.2 窗体外观特效 76
范例4-4 不规则窗体 76
范例4-5 全屏显示的窗体 78
范例4-6 带有标题边框的窗体 80
范例4-7 透明窗体 82
范例4-8 自定义消息对话框 83
4.3 子窗体 84
范例4-9 内部子窗体 84
范例4-10 关闭全部子窗体 87
4.4 窗体主题 90
范例4-11 具有Office 2003主题的窗体 90
范例4-12 具有苹果主题的窗体 91
范例4-13 具有可选择主题的窗体 93
4.5 操纵窗体 94
范例4-14 可拖曳移动的窗体 94
范例4-15 程序控制窗体最小化和最大化 96
4.6 实用窗体类 98
范例4-16 常见的窗体属性设置 98
范例4-17 字体选择窗体 100
范例4-18 带有分隔栏的窗体 103
范例4-19 显示网页的窗体 106
4.7 本章小结 109
第5章 窗体组件 109
5.1 简单组件 110
范例5-1 带有样式的悬浮提示信息 110
范例5-2 带有样式的标签 111
范例5-3 防止文本框输入为空 113
范例5-4 获得焦点自动全部选中文本的文本框 115
范例5-5 设置快捷键 116
范例5-6 单选按钮列表 118
范例5-7 复选框列表 120
范例5-8 选择组合框的内容 122
范例5-9 可以动态追加元素的组合框 124
范例5-10 移动列表框元素 125
5.2 图片组件 128
范例5-11 图片框的演示 128
范例5-12 可以滚动的图片面板 129
5.3 菜单 131
范例5-13 用鼠标右键单击弹出快捷菜单 131
范例5-14 带有图片的菜单 134
范例5-15 模拟Windows“开始”菜单 136
5.4 其他组件 140
范例5-16 字体工具栏 140
范例5-17 带有导航功能的页面框 143
范例5-18 显示一维集合数据的表格 145
范例5-19 时间微调钮 148
范例5-20 自定义圆形按钮 150
5.5 窗体组件布局 153
范例5-21 演示网格包布局 153
5.6 本章小结 155
第6章 访问系统信息 157
6.1 操纵键盘 158
范例6-1 自动键盘录入 158
范例6-2 获取按键信息 160
范例6-3 键盘控制光标移动 161
6.2 操纵鼠标 164
范例6-4 三击处理 164
范例6-5 获取当前鼠标位置 165
6.3 剪贴板 166
范例6-6 文字剪贴板 166
范例6-7 图片剪贴板 169
6.4 打印 172
范例6-8 文本打印 172
范例6-9 图片打印 176
6.5 系统界面控制 179
范例6-10 显示动态光标 179
范例6-11 使用系统托盘 180
6.6 系统信息、处理 183
范例6-12 记录日志 183
范例6-13 利用属性文件实现程序的多语言版本 185
范例6-14 得到系统参数信息 187
6.7 本章小结 188
第7章 时间处理 189
7.1 计时控制 190
范例7-1 计时器 190
范例7-2 在指定时间点上运行特定代码 191
范例7-3 统计运行时间 193
范例7-4 随机选数程序 194
7.2 显示时间 196
范例7-5 数字时钟 196
范例7-6 日历 198
范例7-7 格式化日期和时间 200
范例7-8 钟表 201
7.3 本章小结 204
第8章 文件处理 205
8.1 文件搜索 206
范例8-1 即时文件名称搜索 206
范例8-2 文件全文搜索 208
8.2 读取常见格式的文档 213
范例8-3 读写属性文件 213
范例8-4 读取Word文档 214
范例8-5 读写Excel文档 216
范例8-6 读取PDF文档 219
8.3 文件资源管理 221
范例8-7 字符界面的文件目录查看器 221
范例8-8 基于树状视图文件的目录查看器 223
范例8-9 查看文件属性 226
范例8-10 支持目录创建的树状视图文件资源管理器 228
范例8-11 支持文件删除的树状视图文件资源管理器 230
范例8-12 带有图标项列表的树状视图文件资源管理器 233
8.4 其他文件处理方式 237
范例8-13 复制文件 237
范例8-14 压缩文件 238
范例8-15 显示读取文件的进度 243
范例8-16 设置打开文件的类型 245
8.5 本章小结 247
第9章 流处理 249
9.1 控制流的读取 250
范例9-1 截取命令控制台的信息 250
范例9-2 通用型字符流管道 251
范例9-3 重定向标准输出流 252
9.2 类变量序列化 253
范例9-4 利用字符输出流保存类变量信息 253
范例9-5 类变量序列化 256
范例9-6 复杂类变量的序列化 257
9.3 本章小结 258
第10章 加密解密 259
10.1 密钥算法 260
范例10-1 DES加密 260
范例10-2 RSA加密 264
10.2 信息验证 269
范例10-3 计算MD5值 269
范例10-4 基于消息摘要的文件验证 271
范例10-5 文件签名 274
10.3 本章小结 280
第11章 网络处理 281
11.1 网页解析 282
范例11-1 IP和域名相互转换 282
范例11-2 解析HTML网页中的文本信息 284
11.2 Cookie处理 286
范例11-3 发送Cookie到网页 286
范例11-4 获取网页的Cookies值 288
范例11-5 表单仿真登录 290
11.3 获取网络资源 292
范例11-6 下载网络文件 292
范例11-7 显示网络图片文件 295
11.4 网络搜索 296
范例11-8 搜索引擎爬虫 296
范例11-9 访问Google搜索引擎的搜索结果 304
11.5 服务器 307
范例11-10 利用文件信息显示Telnet 307
范例11-11 简易Web服务器 309
范例11-12 支持文件服务的Web服务器 311
范例11-13 时间服务器 316
11.6 浏览器 318
范例11-14 简易Web服务器 318
范例11-15 WebBrowser浏览器 320
11.7 实时通信 321
范例11-16 基于窗体界面的点对点聊天程序 321
11.8 本章小结 326
第12章 数据库访问 327
12.1 表记录浏览 328
范例12-1 浏览全部表记录 328
范例12-2 倒序浏览全部表记录 330
范例12-3 格式化表记录显示方式 332
范例12-4 联动显示表记录 333
范例12-5 查询分析器 337
12.2 获取数据库的结构信息 340
范例12-6 基于树状视图的数据库表结构查看器 340
范例12-7 基于表格的数据库结构查看器 344
12.3 访问存储过程 349
范例12-8 使用存储过程的传入参数 349
范例12-9 使用存储过程的传出参数 351
范例12-10 使用存储过程的返回值 353
12.4 数据绑定组件 355
范例12-11 支持数据绑定的复选框列表 355
范例12-12 数据绑定表格 359
12.5 二进制信息存储 362
范例12-13 存取数据库中的图像信息 362
范例12-14 利用数据库存储类对象 368
范例12-15 类变量和关系型数据的静态映射 371
范例12-16 对象和关系型数据的动态映射 376
12.6 实用数据库应用程序 382
范例12-17 数据绑定表格用户登录 382
范例12-18 通用表记录导航窗体 386
范例12-19 带有更新功能的通用表记录导航窗体 391
12.7 其他 400
范例12-20 防止SQL语句攻击 400
范例12-21 数据库连接池 402
范例12-22 自定义事务管理 405
12.8 本章小结 408
第13章 XML处理 409
13.1 显示XML文件 410
范例13-1 基于DOM显示带有缩进格式的XML文档内容 410
范例13-2 基于SAX显示带有缩进格式的XML文档内容 414
范例13-3 利用栈显示SAX遍历过的节点信息 417
范例13-4 统计XML文档各个标签出现的次数 420
范例13-5 遍历指定名称空间下的所有XML节点 423
13.2 更新XML文件 425
范例13-6 追加XML节点 425
范例13-7 插入XML节点 429
范例13-8 删除XML节点 435
13.3 XSLT 439
范例13-9 XSLT样式转换 439
13.4 XML验证 443
范例13-10 基于DOM的DTD验证 443
范例13-11 基于SAX的DTD验证 446
范例13-12 Schema验证 449
13.5 XML与类变量的交互 453
范例13-13 从类变量导出XML文件 453
范例13-14 从XML文件导入类变量 454
13.6 XML与数据库的交互 455
范例13-15 读取XML文件内容存储到数据库 455
范例13-16 读取数据库表记录到XML文件 458
13.7 本章小结 460
第14章 图像处理 461
14.1 绘制图像 462
范例14-1 饼状统计图 462
范例14-2 太极图 465
范例14-3 绘制宽度线条 467
范例14-4 绘制指定行数的菱形图案 468
14.2 图像特效 470
范例14-5 调整图像亮度 470
范例14-6 图像处理(钝化、锐化和浮雕) 473
范例14-7 绘制灰度图像 476
范例14-8 绘制渐变色 478
范例14-9 透明色 482
范例14-10 条纹边框 484
范例14-11 双缓冲绘图 486
14.3 文本图像 488
范例14-12 生成文字图片 488
范例14-13 栅格文字 490
范例14-14 绘制带有纹理的文字 493
范例14-15 多样式文本 495
范例14-16 阴影字体 497
14.4 动画 498
范例14-17 2D动画 498
范例14-18 连续显示多幅图片形成的动画 502
14.5 交互式绘图 505
范例14-19 利用鼠标绘制自由线条 505
范例14-20 键盘绘图 507
14.6 其他图像操作 510
范例14-21 绘制子图片 510
范例14-22 截屏程序 513
范例14-23 调色板 516
14.7 本章小结 517
第15章 声音处理 519
15.1 播放au声音文件 520
范例15-1 播放au声音文件的Applet 520
15.2 播放MIDI声音文件 522
范例15-2 播放MIDI音乐 522
范例15-3 显示播放MIDI音乐的进度 524
15.3 播放MP3声音文件 529
范例15-4 播放MP3的动画窗体 529
15.4 本章小结 531
第16章 网页显示 533
16.1 表单处理 534
范例16-1 处理请求表单中的汉字参数信息 534
范例16-2 显示全部的请求参数 535
16.2 网页格式 537
范例16-3 动态显示当前服务器的时间 537
范例16-4 多国语言控制 538
范例16-5 选择显示Flash 543
16.3 状态维护 544
范例16-6 利用上下文对象统计访问网站的总次数 544
范例16-7 统计会话中的访问次数 546
范例16-8 基于Cookies的访问页面次数统计 547
范例16-9 使用数字图片显示访问次数 549
范例16-10 利用会话变量实现的购物车 550
范例16-11 具有自动状态保持功能的文本框 554
16.4 结合脚本的网页功能控制 556
范例16-12 常见的用户注册网页 556
范例16-13 可以折叠的分隔栏 563
范例16-14 无工具栏的网页和可以被直接关闭的网页 566
范例16-15 具有树状视图的网页 568
16.5 其他 573
范例16-16 请求标签的使用 573
范例16-17 自定义错误页面 574
16.6 本章小结 575
第17章 高级网页处理 577
17.1 文件处理 578
范例17-1 服务器文件资源查看器 578
范例17-2 利用web.xml文件存储初始化信息 580
范例17-3 利用文件实现输出缓存 582
范例17-4 基于文件存储的表单选择统计 583
范例17-5 上传文件 587
范例17-6 通过jspsmartupload.jar包实现文件上传 590
17.2 邮件管理 592
范例17-7 发送电子邮件 592
范例17-8 编辑和发送带有HTML格式的电子邮件 595
范例17-9 发送带有文件附件的邮件 599
范例17-10 发送带有网络资源附件的邮件 605
范例17-11 将邮件内容附加为文本附件的邮件 609
范例17-12 接收电子邮件 612
17.3 验证和安全认证 615
范例17-13 验证码图片 615
范例17-14 FORM认证 619
范例17-15 BASIC认证 622
范例17-16 代码实现BASIC认证 624
范例17-17 基于JDBC域的安全认证 625
17.4 本章小结 629
第18章 网页访问数据库 631
18.1 表记录处理 632
范例18-1 数据库表记录的导航网页 632
范例18-2 带有更新功能的数据库表记录导航网页 634
范例18-3 数据库标签的使用 637
范例18-4 基于MVC架构的学生成绩查询系统 639
18.2 支持数据绑定的自定义标签 643
范例18-5 具有状态维持和数据绑定功能的下拉列表 643
范例18-6 具有状态维持和数据绑定功能的单选按钮列表 649
范例18-7 具有状态维持和数据绑定功能的复选框列表 652
18.3 网页中的数据表格 656
范例18-8 显示数据库表记录的自定义表格标签 656
范例18-9 可以更新数据的网页数据表格 658
范例18-10 支持字段排序的自定义表格标签 662
范例18-11 支持分页显示的网页数据表格 666
18.4 本章小结 669
第19章 应用程序演示 671
19.1 窗体应用程序演示 672
范例19-1 记事本 672
范例19-2 画笔 675
范例19-3 计算器 684
范例19-4 九宫格 687
范例19-5 五子棋 691
范例19-6 打字测试 698
19.2 Web应用程序演示 701
范例19-7 猜数字游戏 701
19.3 本章小结 705
附录A JDK和Eclipse 707
A.1 安装JDK 708
A.2 安装Eclipse 708
A.3 使用Eclipse开发Java应用程序 709
A.4 使用Eclipse开发Web应用程序 709