第一篇 典型模块篇 2
第1章 备忘录模块(Swing+JDBC实现) 2
1.1备忘录模块概述 3
1.1.1模块概述 3
1.1.2功能结构 3
1.1.3程序预览 3
1.2关键技术 4
1.2.1绘制艺术字 4
1.2.2窗体居中显示 5
1.2.3使用JavaBean封装信息 6
1.2.4获得MYSQL数据库连接 7
1.2.5批量处理数据库操作 7
1.2.6使用List保存查询结果 9
1.2.7使用正则表达式校验日期 11
1.2.8调用系统工具 12
1.3主窗体 12
1.3.1功能概述 12
1.3.2添加菜单及菜单项 13
1.3.3绘制窗体中的艺术字 14
1.3.4设置窗体显示位置…和大小 15
1.4增加备忘录 15
1.4.1功能概述 15
1.4.2设置文本框和文本区控件 15
1.4.3添加工具按钮 17
1.4.4保存备忘录信息 17
1.4.5清空备忘录信息 18
1.4.6销毁窗体 19
1.5修改备忘录 19
1.5.1功能概述 19
1.5.2设置文本框和文本区控件 19
1.5.3添加工具按钮 21
1.5.4填充备忘录信息 21
1.5.5修改前一条备忘录信息 22
1.5.6修改后一条备忘录信息 22
1.5.7修改备忘录信息 23
1.6查询备忘录 24
1.6.1功能概述 24
1.6.2设置文本框和文本区控件 24
1.6.3添加工具按钮 25
1.6.4查询备忘录信息 26
1.7显示查询结果 27
1.7.1功能概述 27
1.7.2设置文本框和文本区控件 28
1.7.3添加工具按钮 29
1.7.4填充备忘录信息 29
1.7.5查看上一条查询结果 30
1.7.6查看下一条查询结果 30
1.8删除备忘录 31
1.8.1功能概述 31
1.8.2设置文本框和文本区控件 31
1.8.3添加工具按钮 32
1.8.4填充备忘录信息 33
1.8.5删除上一条备忘录信息 33
1.8.6删除下一条备忘录信息 33
1.8.7删除备忘录信息 34
第2章 学生成绩管理模块(Swing+MySQL实现) 35
2.1学生成绩管理模块概述 36
2.1.1模块概述 36
2.1.2功能结构 36
2.1.3程序预览 36
2.2关键技术 38
2.2.1绘制艺术字 38
2.2.2窗体居中显示 38
2.2.3使用JavaBean封装信息 39
2.2.4获得MySQL数据库连接 40
2.2.5批量处理数据序操作 41
2.2.6使用List保存查询结果 42
2.2.7使用正则表达式进行校验 44
2.2.8调用系统工具 45
2.3主窗体 46
2.3.1功能概述 46
2.3.2添加菜单及菜单项 46
2.3.3绘制窗体中的艺术字 47
2.3.4设置窗体显示位置和大小 48
2.4增加成绩单 48
2.4.1功能概述 48
2.4.2配置非按钮控件 48
2.4.3添加工具按钮 50
2.4.4保存成绩单信息 50
2.4.5清空成绩单信息 51
2.4.6销毁窗体 52
2.5显示已保存成绩单 52
2.2.1功能概述 52
2.2.2为表格控件添加数据 53
2.2.3“修改”按钮事件监听 53
2.2.4“删除”按钮事件监听 54
2.6修改成绩单 55
2.6.1功能概述 55
2.6.2设置文本框控件 55
2.6.3添加工具按钮 57
2.6.4填充成绩单信息 57
2.6.5修改成绩单信息 57
2.7查询成绩单 59
2.7.1功能概述 59
2.7.2设置文本框控件 59
2.7.3添加工具按钮 61
2.7.4查询成绩单信息 61
2.7.5显示查询结果 62
第3章 常用照片管理模块(Swing+图片处理技术实现) 64
3.1常用照片管理模块概述 65
3.1.1设计思路 65
3.1.2功能结构 65
3.1.3效果预览 66
3.2关键技术 68
3.2.1捕获树的选中节点事件 68
3.2.2捕获树的展开节点事件 69
3.2.3浏览方式切换技术 70
3.2.4随意选取照片技术 72
3.2.5照片缩放与内存溢出 75
3.2.6换行显示提示信息 76
3.3相册树 76
3.3.1功能概述 76
3.3.2 添加相册 77
3.3.3修改相册 77
3.3.4删除相册 78
3.4照片管理 78
3.4.1功能概述 78
3.4.2添加照片 79
3.4.3修改照片信息 80
3.4.4删除照片 81
3.4.5搜索8片 82
3.4.6保存照片 85
3.5照片显示 86
3.5.1功能概述 86
3.5.2全屏显示照片 86
3.5.3照片播放器 87
第4章 定制打印模块(Swing+MySQL实现) 90
4.1定制打印模块概述 91
4.1.1模块概述 91
4.1.2功能结构 91
4.1.3程序预览 91
4.2关键技术 93
4.2.1自定义面板背景图片 93
4.2.2窗体居中显示 94
4.2.3使用JavaBean封装信息 94
4.2.4获得MySQL数据库连接 96
4.2.5批量处理数据库操作 96
4.2.6使用List保存查询结果 98
4.2.7使用Java操作打印机 99
4.3主窗体 100
4.3.1功能概述 100
4.3.2添加菜单及菜单项 100
4.3.3加载窗体背景图片 101
4.3.4设置窗体显示位置和大小 102
4.4添加快递单 102
4.4.1功能概述 102
4.4.2加载快递单图片 103
4.4.3设置文本框和文本域控件 103
4.4.4添加工具按钮 104
4.4.5保存快递单信息 104
4.4.6清空快递单信息 106
4.4.7销毁窗体 106
4.5修改快递单 107
4.5.1功能概述 107
4.5.2加载快递单图片 107
4.5.3设置文本框和文本域控件 108
4.5.4添加工具按钮 109
4.5.5填充快递单信息 109
4.5.6获得上一条快递单信息 110
4.5.7获得下一条快递单信息 110
4.5.8修改快递单信息 111
4.6打印快递单 112
4.6.1功能概述 112
4.6.2加载快递单图片 113
4.6.3设置文本框和文本域控件 113
4.6.4添加工具按钮 114
4.6.5填充快递单信息 114
4.6.6获得上一条快递单信息 115
4.6.7获得下一条快递单信息 115
4.6.8分割文本区信息 116
4.6.9打印快递单信息 116
第5章 短信收发模块(Swing+GSM MODEM实现) 119
5.1短信收发模块概述 120
5.1.1模块概述 120
5.1.2功能结构 120
5.1.3程序预览 120
5.2关键技术 121
5.2.1短信猫技术 121
5.2.2收发信息 123
5.2.3选项卡的关联 126
5.2.4卡片布局 127
5.2.5树控件的使用 129
5.3设置并连接短信猫 129
5.3.1功能概述 129
5.3.2短信猫设置 130
5.3.3连接短信猫 131
5.4读取短信 132
5.4.1功能概述 132
5.4.2读取短信 132
5.4.3显示短信 133
5.5发送短信 134
5.5.1功能概述 134
5.5.2添加删除收信人 134
5.5.3“联系人”选项卡 135
5.5.4编写短信内容 136
5.6发信箱 137
5.6.1功能概述 137
5.6.2读取已发短信 137
5.6.3显示收信人列表 139
5.7联系人管理 139
5.7.1功能概述 139
5.7.2添加联系人组别 140
5.7.3联系人对话框 141
5.7.4添加联系人 145
5.7.5修改联系人或组别 145
5.7.6删除联系人或组别 145
第6章FTP上传下载模块(Swing+FTP技术实现) 147
6.1 FTP上传下载模块概述 148
6.1.1模块概述 148
6.1.2功能结构 148
6.1.3系统预览 149
6.2关键技术 150
6.2.1登录FTP服务器 150
6.2.2浏览本地资源 151
6.2.3浏览服务器资源 152
6.2.4 FTP文件上传与下载 153
6.2.5向FTP服务器发送命令 155
6.2.6获取文件在本系统的显示图标 157
6.2.7任务队列 158
6.3 FTP站点管理 160
6.3.1功能概述 160
6.3.2读取属性文件 161
6.3.3装载FTP站点信息 161
6.3.4添加FTP站点 162
6.4本地资源管理 163
6.4.1功能概述 163
6.4.2删除本地文件 164
6.4.3重命名本地文件或文件夹 165
6.4.4新建文件夹 166
6.4.5添加本地文件到上传队列 167
6.4.6刷新本地资源列表 168
6.5 FTP资源管理 169
6.5.1功能概述 169
6.5.2删除服务器文件 170
6.5.3重命名服务器文件或文件夹 171
6.5.4新建文件夹 172
6.5.5添加服务器资源到下载队列 172
6.5.6刷新服务器资源列表 173
6.6队列管理 174
6.6.1功能概述 174
6.6.2任务队列 175
6.6.3本地队列文件上传 178
6.6.4 FTP队列文件下载 181
第7章 局域网通信模块(Swing+Java DB实现) 184
7.1局域网通信概述 185
7.1.1模块概述 185
7.1.2功能结构 185
7.1.3程序预览 185
7.2关键技术 186
7.2.1创建操作数据库的Dao类 186
7.2.2工具类的实现 190
7.3主窗体 194
7.3.1功能概述 194
7.3.2实现主窗体 194
7.3.3记录窗体位置 197
7.4实现系统托盘 197
7.4.1功能概述 197
7.4.2初始化系统托盘 198
7.4.3实现弹出菜单 198
7.4.4双击托盘图标显示主窗体 199
7.5实现系统工具 199
7.5.1功能概述 199
7.5.2实现界面选择 200
7.5.3实现搜索新用户 200
7.5.4进行系统操作 201
7.6用户管理 203
7.6.1功能概述 203
7.6.2创建用户树列表 204
7.6.3在用户树中显示用户 206
7.6.4从用户树中删除用户 206
7.6.5向用户树中添加用户 207
7.7实现通信 208
7.7.1功能概述 208
7.7.2实现通信窗体 208
7.7.3接收信息 210
7.7.4发送信息 210
7.7.5系统信使 211
第8章 区域地图模块(Swing+Java DB+绘图技术实现) 212
8.1区域地图模块概述 213
8.1.1设计思路 213
8.1.2功能结构 213
8.1.3程序预览 214
8.2关键技术 216
8.2.1 Java DB数据库 216
8.2.2万年历选择框技术 217
8.2.3滑块控件使用技术 222
8.2.4列表控件使用 223
8.2.5维护树模型 224
8.3地图处理器 226
8.3.1功能概述 226
8.3.2获得小地图 226
8.3.3处理缩放和显示位置 228
8.4地图显示 229
8.4.1功能概述 229
8.4.2绘制大地图 230
8.4.3绘制小地图 232
8.5地图操作 233
8.5.1功能概述 233
8.5.2实现地图缩放功能 233
8.5.3实现地图移动功能 235
8.6标记维护 236
8.6.1功能概述 236
8.6.2创建弹出菜单 236
8.6.3创建和修改标记 238
8.6.4删除标记 240
8.6.5查看标记信息 240
8.7标记搜索 241
8.7.1功能概述 241
8.7.2常用搜索 242
8.7.3高级搜索 243
8.7.4描红并居中显示标记 244
第9章 序列号注册模块(Swing+RSA实现) 246
9.1.序列号注册模块概述 247
9.1.1模块概述 247
9.1.2功能结构 247
9.1.3程序预览 247
9.2关键技术 248
9.2.1读取客户端MAC地址 248
9.2.2 Java操作注册表 249
9.2.3避免用户修改系统时间 250
9.2.4弹出菜单 251
9.2.5一次性粘贴注册码 253
9.2.6计算两个时间的间隔天数 253
9.2.7 ini文件的读写 254
9.2.8 RSA加密/解密算法 255
9.3软件注册导航窗体 257
9.3.1功能概述 257
9.3.2软件试用功能实现 259
9.4软件注册窗体 261
9.4.1功能概述 261
9.4.2验证注册码 264
9.4.3限制使用时间 266
9.4.4保证使用唯一性 267
9.5注册机实现 268
9.5.1功能概述 268
9.5.2生成注册码 269
第10章PDF查看模块(Swing+PDF Render实现) 271
10.1 PDF查看模块概述 272
10.1.1模块概述 272
10.1.2功能结构 272
10.1.3程序预览 272
10.2关键技术 274
10.2.1 PDF Render组件技术 274
10.2.2实现PDF文档缩放 274
10.2.3实现PDF文档分页 277
10.2.4实现PDF文档打印、页面设置 280
10.2.5实现PDF文档自动滚动功能 282
10.2.6实现抓手功能 283
10.3主窗体 285
10.3.1功能概述 285
10.3.2菜单栏的实现 285
10.3.3工具栏的实现 286
10.3.4左侧索引面板的实现 287
10.3.5右侧界面的实现 287
10.4打开PDF文档 288
10.4.1功能概述 288
10.4.2创建文件选择器 288
10.4.3在文件选择器中只显示PDF文档 290
10.4.4使窗体标题栏显示PDF 文档名称 290
10.4.5显示PDF文档内容 291
10.5缩位图导航 291
10.5.1功能概述 291
10.5.2实现缩位图面板 292
10.5.3实现缩位图索引功能 292
10.6书签导航 293
10.6.1功能概述 293
10.6.2实现书签面板 294
10.6.3实现书签索引功能 294
10.7全屏显示PDF文档 295
10.7.1功能概述 295
10.7.2在工具栏中添加“全屏”按钮 296
10.7.3实现全屏显示功能 296
第11章 动态考题模块(Swing+MySQL实现) 300
11.1动态考题模块概述 301
11.1.1模块概述 301
11.1.2功能结构 301
11.1.3程序预览 301
11.2关键技术 304
11.2.1设置窗体背景 304
11.2.2编写字符处理类 304
11.2.3编写获取时间方法 305
11.2.4编写Java Bean 306
11.2.5倒计时 307
11.3登录窗体 308
11.3.1功能概述 308
11.32编写验证用户是否合法的方法 309
11.3.3实现登录功能 310
11.4考试主窗体 312
11.4.1功能概述 312
11.4.2显示考生姓名 313
11.4.3显示考题 314
11.4.4转到上一题、下一题 317
11.4.5实现自动阅卷 320
11.5管理员查分功能 322
11.5.1功能概述 322
11.5.2按考生号查询成绩 322
11.5.3按考生姓名查询考分 323
11.6添加考题 325
11.6.1功能概述 325
11.6.2使用List集合存储有考题 325
11.6.3自动计算考题号 326
11.6.4保存考题 326
11.7修改/删除考题设计 328
11.7.1功能概述 328
11.7.2实现修改考题 328
11.7.3实现删除试题 330
11.8考试参数设置 331
11.8.1功能概述 331
11.8.2在下拉列表中显示内容 331
11.8.3实现考试参数设置 333
第12章 多功能查询模块(Swing+SQL Server 2005实现) 335
12.1多功能查询模块概述 336
12.1.1模块概述 336
12.1.2业务流程 336
12.1.3程序预览 337
12.2关键技术 337
12.2.1 JDBC技术 337
12.2.2查询语句结构 339
12.2.3获取字段的描述信息 340
12.2.4获取数据库中的所有表名 340
12.2.5如何将程序加载到其他程序中 341
12.3文件操作 343
12.3.1功能概述 343
12.3.2实现向txt文件中写数据 343
12.3.3实现将查询结果写入txt文件中 344
12.4事件处理 347
12.4.1功能概述 347
12.4.2实现获取表中的字段描述信息 347
12.4.3实现绑定组件的处理事件 348
12.4.4显示调用程序窗体 349
第13章 文件分割模块(Swing+I/O文件处理技术实现) 350
13.1文件分割模块概述 351
13.1.1模块概述 351
13.1.2功能结构 351
13.1.3程序预览 351
13.2关键技术 352
13.2.1文件操作与读写 352
13.2.2获取系统有效盘符 355
13.2.3转换文件编码格式 355
13.2.4文件解压缩 357
13.2.5表格控件的使用 359
13.3主窗体 361
13.3.1功能概述 361
13.3.2菜单栏设计 361
13.3.3工具栏设计 362
13.3.4实现显示系统文件夹 363
13.3.5实现显示系统文件夹中的文件 365
13.4新建文件 366
13.4.1功能概述 366
13.4.2实现新建文件 367
13.4.3实现新建文件夹 368
13.5实现文件搜索 369
13.5.1功能概述 369
13.5.2在下拉列表中添加有效盘符 369
13.5.3实现文件搜索功能 370
13.6实现批量复制 371
13.6.1功能概述 371
13.6.2实现复制指定文件 372
13.6.3实现复制整个文件夹 373
13.7实现文件批量移动 375
13.7.1功能概述 375
13.7.2实现移动指定文件 375
13.7.3实现移动整个文件夹 376
13.8实现批量删除 378
13.8.1功能概述 378
13.8.2“扩展名”下拉列表设计 378
13.8.3文件日期文本框设计 379
13.9实现批量重命名 381
13.9.1功能概述 381
13.9.2批量重命名文件 382
13.10批量修改文件编码格式 384
13.10.1功能概述 384
13.10.2批量修改文件编码 384
13.11压缩和解压缩文件 385
13.11.1功能概述 385
13.11.2实现压缩文件 385
13.11.3实现文件解压 387
13.12文件分割与合并 388
13.12.1功能概述 388
13.12.2实现文件分割 388
13.12.3实现文件合并 390
13.13实现文件分类管理 392
13.13.1功能概述 392
13.13.2分类管理文件 392
第14章 图书管理模块(Swing+SQL Server 2005实现) 394
14.1图书管理模块概述 395
14.1.1模块概述 395
14.1.2功能结构 395
14.1.3程序预览 395
14.2关键技术 397
14.2.1连接和操作数据库 397
14.2.2 MenuActions类的编写 399
14.2.3限制文本框长度类的编写 403
14.2.4描述组合框索引与内容类的编写 404
14.2.5在JLable上添加图片类 406
14.3主窗体 406
14.3.1功能概述 406
14.3.2实现菜单栏的设计 407
14.3.3实现工具栏的设计 408
14.3.4为窗体添加背景 408
14.4添加图书类别 409
14.4.1功能概述 409
14.4.2保存图书类别 409
14.5修改和删除图书类别 410
14.5.1功能概述 410
14.5.2修改图书类别 411
14.5.3删除图书类别 413
14.6添加图书信息 414
14.6.1功能概述 414
14.6.2保存图书信息 414
14.7修改和删除图书信息 416
14.7.1功能概述 416
14.7.2修改图书信息 416
14.7.3删除图书信息 419
14.8查询图书信息 420
14.8.1功能概述 420
14.8.2查询满足条件的图书 420
14.8.3显示全部图书信息 422
第15章 五子棋游戏模块(Swing+Socket网络技术实现) 424
15.1五子棋模块概述 425
15.1.1模块概述 425
15.1.2功能结构 425
15.1.3系统预览 425
15.2关键技术 428
15.2.1实现透明的登录界面 428
15.2.2监控网络连接状态 428
15.2.3绑定属性的JavaBean 429
15.2.4在棋盘中绘制棋予 430
15.2.5实现动态调整棋盘大小 431
15.2.6 游戏悔棋 432
15.2.7游戏回放 433
15.3游戏登录界面 434
15.3.1功能概述 434
15.3.2绘制登录界面背景 434
15.3.3增加窗体控件 435
15.3.4处理“登录”按钮事件 436
15.4游戏主窗体 437
15.4.1功能概述 437
15.4.2聊天面板实现 438
15.4.3实现用户信息面板与列表面板 439
15.5下棋面板 440
15.5.1功能概述 440
15.5.2实现广告标题栏 440
15.5.3绘制下棋面板中的图片 441
15.5.4下棋前的准备工作 442
15.5.5游戏控制面板按钮事件 443
15.6棋盘面板 446
15.6.1功能概述 446
15.6.2绘制棋盘面板 447
15.6.3实现游戏规则算法 450
15.6.4编写棋盘模型 453
15.6.5编写联机通信类 454
第二篇 项目实战篇 459
第16章 酒店管理系统(Swing+SQL Server 2005实现) 459
16.1开发背景 460
16.2系统分析 460
16.3系统设计 461
16.3.1系统目标 461
16.3.2系统功能结构 461
16.3.3系统预览 461
16.3.4文件夹结构设计 463
16.3.5业务流程图 463
16.4数据库设计 464
16.4.1数据库概要说明 464
16.42数据库概念设计 464
16.4.3数据库逻辑设计 465
16.5公共模块设计 466
16.5.1编写数据库连接类 466
16.5.2封装常用的操作数据库的方法 467
16.5.3自定义表格控件 469
16.5.4编写利用正则表达式验证数据合法性的方法 470
16.6.主窗体模块设计 470
16.6.1主窗体模块概述 470
16.6.2主窗体摸块技术分析 471
16.6.3主窗体模块实现过程 471
16.7用户登录窗口模块设计 472
16.7.1用户登录窗口模块概述 472
16.7.2用户登录窗口模块技术分析 473
16.7.3用户登录窗口模块实现过程 474
16.8开台签单工作区设计 477
16.8.1开台签单工作区功能概述 477
16.8.2开台签单工作区技术分析 478
16.8.3开台签单工作区实现过程 479
16.8.4单元测试 483
16.9自动结账工作区设计 484
16.9.1自动结账工作区功能概述 484
16.9.2自动结账工作区技术分析 484
16.9.3自动结账工作区实现过程 485
16.10结账报表工作区设计 486
16.10.1结账报表工作区功能概述 486
16.10.2结账报表工作区技术分析 487
16.10.3结账报表工作区实现过程 488
16.10.4单元测试 491
16.11后台管理工作区设计 492
16.11.1后台管理工作区功能概述 492
16.11.2后台管理工作区技术分析 493
16.11.3后台管理工作区实现过程 494
16.11.4单元测试 500
16.12开发问题解析 500
第17章 企业人事管理系统(Swing+Hibernate+Oracle实现) 503
17.1开发背景 504
17.2系统分析 504
17.3系统设计 504
17.3.1系统目标 504
17.3.2系统功能结构 504
17.3.3系统预览 506
17.3.4业务流程图 507
17.3.5文件夹结构设计 507
17.4数据库设计 508
17.4.1数据库分析 508
17.4.2数据库概念设计 508
17.4.3数据库逻辑结构设计 509
17.5主窗体设计 510
17.5.1导航栏的设计 510
17.5.2工具栏的设计 512
17.6公共模块设计 514
17.6.1编写Hibernate 配置文件 514
17.6.2编写Hibernate持久化类和映射文件 515
17.6.3编写通过Hibemate操作持久化对象的常用方法 516
17.6.4创建用于特殊效果的部门树对话框 517
17.6.5创建通过部门树选取员工的面板和对话框 518
17.7人事管理模块设计 520
17.7.1人事管理模块功能概述 520
17.7.2人事管理模块技术分析 521
17.7.3人事管理模块实现过程 522
17.7.4单元测试 526
17.8待遇管理模块设计 527
17.8.1待遇管理模块功能概述 527
17.8.2待遇管理模块技术分析 527
17.8.3待遇管理模块实现过程 528
17.9系统维护模块设计 532
17.9.1系统维护模块功能概述 532
17.9.2系统维护模块技术分析 533
17.9.3系统维护模块实现过程 534
17.9.4单元测试 537
17.10开发问题解析 538
17.11 Hibernate关联关系的建立方法 538
17.11.1建立一对一关联 538
17.11.2建立一对多关联 539