书籍详情
精通JBUILDER 2005
作者:陈雄华,涂传滨等编著
出版社:电子工业出版社
出版时间:2005-06-01
ISBN:9787121011665
定价:¥69.00
购买这本书可以去
内容简介
本书通过丰富的程序实例引出JBuilder2005的各项功能,并将其糅合到具体的开发过程中。全书内容包括JavaBean开发、DataExpress开发、XML开发、EJB开发等专题。书中内容的难度与层次是逐渐提高,让读者循序渐进地提高自己的实际应用能力。通过本书,读者在深刻掌握JBuilder2005各项功能的同时,还可以学习到各种Java程序开发的开发技巧和注意事项。本书通过丰富的程序实例引出JBuilder2005的各项功能,并将其糅合到具体的开发过程中。本书分为5大篇,其中第1篇为JBuilder基础知识篇;第2篇至第4篇为各种Java开发专题,其层次和难度逐渐递增,内容包括:JavaBean开发、DataExpress和dbSwing数据库开发、Applet开发、JSP开发、Struts开发、Cocoon开发、XML开发、EIB开发、WebService开发等;第5篇为提高篇,内容包括:团队协作及版本控制、单元测试、创建Javadoc文档和代码重构等。通过本书,读者在深刻掌握JBuilder2005各项功能的同时,还可以学习到各种Java程序开发的实战经验、开发技巧和注意事项。本书适合于有一定Java基础的读者,以及对JavaJBuilder有过一定开发经验的软件开发人员。
作者简介
暂缺《精通JBUILDER 2005》作者简介
目录
第一篇
第1章 JBuilder 2005概述 2
1.1 功能介绍 2
1.2 新增特性 4
1.3 程序安装 5
1.3.1 不同版本的差异 5
1.3.2 硬件要求 6
1.3.3 安装步骤 7
1.4 理解安装目录 11
1.5 使用帮助 12
1.5.1 如何获取帮助 12
1.5.2 使用Help Viewer 13
1.6 常见问题解决之道 14
1.6.1 光标错位 14
1.6.2 汉字乱码 17
1.7 总结 17
第2章 Java语言基础 18
2.1 Java简介 18
2.1.1 Java发展史 18
2.1.2 Java的特点 19
2.1.3 关于Java的FAQ 19
2.2 Java语言基础 20
2.2.1 注释 20
2.2.2 Java中的关键字 21
2.2.3 基本数据类型 22
2.2.4 基本数据类型的转换 23
2.2.5 字面值 24
2.2.6 数组 25
2.2.7 运算符和表达式 27
2.3 流程控制 32
2.3.1 选择流程控制语句 33
2.3.2 循环语句及跳转 34
2.4 类和对象 37
2.4.1 类的一般结构 38
2.4.2 类的包 39
2.4.3 类的值域和方法 40
2.4.4 方法的重载和覆盖 42
2.4.5 类的构造函数 43
2.4.6 类的继承 44
2.4.7 类和接口 46
2.5 异常处理 47
2.5.1 Java中的异常结构 48
2.5.2 发生异常时的流程控制 49
2.5.3 抛出异常 50
2.6 JDK 5.0快速进阶 51
2.6.1 简易开发 51
2.6.2 提高扩展性和性能 51
2.6.3 监视和管理 52
2.6.4 新的JVM整形API 52
2.6.5 改进诊断能力 53
2.6.6 元数据Metadata 54
2.6.7 泛型 55
2.6.8 自动装/拆箱 56
2.6.9 增强型for循环 56
2.6.10 枚举化的类型 57
2.6.11 静态引入 57
2.6.12 格式化的输出 57
2.6.13 格式化的输入 57
2.6.14 不定参数 58
2.6.15 并行工具 58
2.6.16 其他的一些新特性 58
2.7 总结 59
第3章 JBuilder 2005集成开发环境 60
3.1 集成开发环境 60
3.1.1 菜单条 61
3.1.2 工具条 62
3.1.3 工程窗格 63
3.1.4 结构窗格 65
3.1.5 内容窗格 66
3.1.6 信息窗格 67
3.1.7 状态条 68
3.1.8 调整工作区效果 69
3.2 工程及工程组 70
3.2.1 何为工程 70
3.2.2 用工程向导创建一个工程 71
3.2.3 工程属性 73
3.2.4 工程组 74
3.3 维护类库 76
3.3.1 类库的结构 76
3.3.2 维护JBuilder类库 77
3.3.3 维护工程扩展类库 81
3.4 设置JDK 82
3.4.1 配置一个新的JDK 82
3.4.2 在工程中使用JDK 5.0 84
3.5 小结 85
第4章 编辑器——高效代码
第4章 开发之利器 87
4.1 编辑器界面组成 87
4.2 编辑器的一般设置 88
4.2.1 设置编辑器字体 88
4.2.2 调整编辑器的显示效果 89
4.2.3 动作触发设置 89
4.3 快捷键 91
4.3.1 快捷键模式 91
4.3.2 配置快捷键 91
4.3.3 常用快捷键 93
4.4 代码选择 96
4.4.1 一般性选择 96
4.4.2 块选择 96
4.5 智能拷贝 97
4.6 查找 98
4.7 用书签进行快速导航和定位 100
4.7.1 数字书签 100
4.7.2 文本书签 100
4.7.3 Todo标识 101
4.8 CodeInsight 101
4.9 代码模板 103
4.9.1 常用代码模板 103
4.9.2 使用代码模板 105
4.9.3 代码模板的设置 105
4.10 同步代码编辑 107
4.11 ErrorInsight 108
4.12 辅助显示支持 109
4.12.1 ScopeInsight 109
4.12.2 代码折叠 110
4.13 代码排版格式化 111
4.13.1 排版格式化的内容 111
4.13.2 设置和调用 112
4.14 总结 113
第5章 代码审查 114
5.1 何谓代码审查 114
5.2 使用代码审查 114
5.3 代码风格审查 116
5.3.1 “switch”必须带一个
5.3.1 default语句 116
5.3.2 应通过类名引用静态成员 116
5.3.3 避免复杂晦涩的代码 117
5.3.4 尽量使用赋值运算符 118
5.3.5 其他代码风格的审查 119
5.4 声明审查 120
5.4.1 避免命名覆盖 120
5.4.2 使用适合的修饰符 121
5.4.3 有关子类覆盖的审查 121
5.4.4 代码排列及先后顺序 121
5.5 命名风格 122
5.5.1 取消不良命名习惯 122
5.5.2 建立和国际接轨的包名 122
5.5.3 避免过于简单的变量名 122
5.6 潜在错误审查 123
5.6.1 聚焦switch 123
5.6.2 避免浮点值等值逻辑判断 125
5.6.3 用括号清晰化
5.6.3 复杂的表示式 126
5.6.4 字符串比较 126
5.7 各种画蛇添足的审查 126
5.7.1 将布尔变量和
5.7.1 布尔值比较 126
5.7.2 无用的成员 127
5.7.3 多余的接口修饰符 127
5.7.4 不必要的强制类型转换 128
5.7.5 多余的import包引入 128
5.8 其他 128
5.8.1 无作为的表达式 128
5.8.2 流程控制中存在
5.8.2 不可至的语句 129
5.8.3 无用的流程标签 130
5.9 总结 130
第6章 编译、运行、调试、
第6章 优化及打包 131
6.1 编译程序 131
6.1.1 关于代码编译 131
6.1.2 编译操作及编译器 131
6.1.3 编译器的设置 133
6.1.4 编译的错误信息 134
6.2 运行程序 135
6.2.1 邮件收发程序 135
6.2.2 运行程序文件 138
6.2.3 设置运行配置信息 139
6.3 调试程序 142
6.3.1 程序的错误类型 142
6.3.2 调试界面 142
6.3.3 调试Sender.java的
6.3.3 运行期错误 144
6.3.4 调试Sender.java的
6.3.4 逻辑错误 146
6.3.5 查看程序加载的类
6.3.5 及类的静态变量 148
6.3.6 多线程调试 149
6.4 Optimizeit代码优化工具 151
6.4.1 Profiler 152
6.4.2 Thread Debugger 154
6.4.3 Code Coverage 156
6.5 打包输出 157
6.5.1 何谓打包 157
6.5.2 混淆编译打包 158
6.5.3 将MailBox打包输出 159
6.5.4 运行打包档案程序文件 162
6.6 总结 163
第二篇
第7章 用户界面应用程序开发 166
7.1 用户界面设计器 166
7.2 布局管理器 167
7.2.1 为何使用布局管理器 167
7.2.2 经典布局管理器 168
7.2.3 JBuilder提供的
7.2.3 布局管理器 173
7.3 用户界面组件 174
7.4 事件处理模型 177
7.4.1 事件类 177
7.4.2 事件监听器 177
7.4.3 显式事件使能 181
7.4.4 适配器 182
7.5 文本编辑器 183
7.5.1 创建工程和主界面 183
7.5.2 加入一个多行文本框组件 186
7.5.3 创建菜单 188
7.5.4 加入一个FontChooser
7.5.4 对话框 190
7.5.5 使用FontChooser设置
7.5.5 多行文本框中的字体 192
7.5.6 添加菜单事件调用
7.5.6 JColorChooser 192
7.5.7 添加菜单事件清除多行
7.5.7 文本框的内容 193
7.5.8 添加文件选择对话框 193
7.5.9 添加从文件中读取
7.5.9 内容的方法 194
7.5.10 添加保存文件菜单
7.5.10 处理事件 195
7.5.11 添加代码监视文件
7.5.11 内容的变化 197
7.5.12 让工具栏工作起来 198
7.5.13 为多行文本框组件
7.5.13 添加事件处理 200
7.5.14 为多行文本框添加
7.5.14 上下文菜单 200
7.5.15 在窗口状态条中显示
7.5.15 文件及其状态 201
7.6 总结 203
第8章 JavaBean开发 204
8.1 什么是Bean 204
8.2 Bean的编写过程 204
8.3 Bean属性和事件 206
8.3.1 Bean的属性 206
8.3.2 属性编辑器 207
8.3.3 属性定制器 208
8.3.4 Bean的事件 209
8.4 整数值范围Bean功能介绍 209
8.5 IntValueBean编写 210
8.5.1 创建IntValueBean 210
8.5.2 序列化组件 212
8.5.3 添加关联属性 212
8.5.4 成为属性变化的监听器 215
8.5.5 添加限制属性 218
8.5.6 添加得到或失去焦点事件 220
8.6 建立RangeBean 223
8.6.1 创建RangeBean 223
8.6.2 代理设置IntValueBean
8.6.2 的bgColor属性 225
8.6.3 代理设置IntValueBean
8.6.3 的intValue属性 226
8.6.4 成为限制属性否决监听器 226
8.7 BeanInfo 229
8.8 属性编辑器 231
8.8.1 生成属性编辑器 232
8.8.2 在BeanInfo中声明
8.8.2 属性编辑器 234
8.9 Bean定制器 236
8.9.1 创建Bean的定制器 236
8.9.2 在BeanInfo中说明
8.9.2 Bean的定制器 238
8.10 打包输出 239
8.10.1 为Bean设定图标 239
8.10.2 查看Bean的各部分内容 240
8.10.3 打成JAR包 240
8.11 添加到组件面板 241
8.12 总结 243
第9章 JDataStore数据库开发 244
9.1 DataStore简介 244
9.1.1 JDataStore的特性 244
9.1.2 JDataStore的配置 244
9.2 用JDataStore浏览器管理数据库 246
9.2.1 启动JDataStore 246
9.2.2 创建JDataStore文件 246
9.2.3 打开JDataStore文件 247
9.3 如何创建表及索引 247
9.3.1 创建表 247
9.3.2 创建索引 248
9.4 JDataStore的安全性管理 248
9.4.1 管理用户 248
9.4.2 修改密码 248
9.4.3 数据库加密 249
9.5 DataStore数据库简单应用 249
9.6 数据库图形用户界面程序 251
9.7 JDataStore的数据导入导出 255
9.8 JDataStore在非结构化
9.8 存储方面的应用 259
9.9 发布基于JDataStore
9.9 的应用程序 264
9.10 总结 264
第10章 DataExpress和
第10章 dbSwing数据库开发 265
10.1 DataExpress简介 265
10.1.1 DataExpress的主要组件 265
10.1.2 DataExpress组件
10.1.2 说明及其属性 266
10.1.3 DataExpress的体系结构 268
10.1.4 模块化DataExpress
10.1.4 体系结构的优点 269
10.2 使用DataExpress和dbSwing
10.2 组件编写数据库应用程序 269
10.2.1 访问文本数据 269
10.2.2 数据库图形用户界面程序 274
10.2.3 允许“脱机”修改
10.2.3 的数据集 278
10.2.4 数据集二次处理 281
10.2.5 使用存储过程
10.2.5 返回数据集 285
10.2.6 序列化数据集 288
10.2.7 触发器 292
10.3 总结 294
第11章 Applet开发 295
11.1 Applet概述 295
11.2 关于浏览器 296
11.3 指法练习Applet游戏介绍 298
11.3.1 界面及功能 298
11.3.2 程序组成 298
11.4 利用向导生成Applet 301
11.5 设计Applet界面 305
11.6 游戏的统计数据 306
11.7 字母下落线程 307
11.8 添加击中音效 309
11.9 字母下落线程的产生器线程 310
11.10 响应用户按键事件 311
11.11 控制游戏 312
11.11.1 为按钮添加图标 312
11.11.2 通过按钮事件
11.11.2 控制游戏 313
11.11.3 保存游戏统计数据 314
11.11.4 关注Applet生命周期 315
11.12 打包并进行数字签名 317
11.12.1 数字签名技术 317
11.12.2 数字证书的生成 318
11.12.3 打包 319
11.12.4 在文件中引用
11.12.4 Applet包文件 321
11.13 使用插件下载JRE 322
11.14 总结 324
第三篇
第12章 Web应用程序开发基础 326
12.1 Web应用程序概述 326
12.2 Web开发的各项技术 327
12.3 Web开发的过程 329
12.4 Web模块和WAR文件 330
12.4.1 什么是Web模块 330
12.4.2 什么是WAR文件 330
12.4.3 如何用JBuilder向导
12.4.3 创建Web模块 331
12.4.4 Web模块的
12.4.4 目录结构 333
12.5 更改Web模块设置 335
12.5.1 Module设置页 335
12.5.2 Web设置页 336
12.5.3 Clean设置页 336
12.5.4 Build设置页 337
12.5.5 Content设置页 338
12.6 配置Web应用服务器 340
12.7 结束 341
第13章 JSP开发 342
13.1 JSP开发必备 342
13.1.1 JSP概述 342
13.1.2 JSP标签 343
13.1.3 JSP隐含对象 344
13.1.4 JSP和对应的Servlet 345
13.2 用户登录Web应用
13.2 程序功能介绍 346
13.3 模块编写准备工作 348
13.3.1 创建数据库表 348
13.3.2 创建工程及Web模块 349
13.3.3 编写获取数据库连接类 349
13.4 登录页面login.jsp 351
13.4.1 创建login.jsp 351
13.4.2 将用户列表改为动态 353
13.5 切换控制switch.jsp 355
13.5.1 编写User.java 356
13.5.2 编写页面程序 357
13.6 错误处理页面error.jsp 361
13.7 登录失败fail.jsp 362
13.8 欢迎页面welcome.jsp 363
13.8.1 将第三方标签库
13.8.1 配置到JBuilder中 363
13.8.2 创建欢迎JSP页面 365
13.9 quit.jsp退出处理页面 368
13.10 用户登录和退出日志 368
13.11 程序部署 371
13.12 总结 373
第14章 Servlet开发 374
14.1 Servlet开发必备 374
14.1.1 Servlet工作方式 374
14.1.2 Servlet的特性
14.1.2 及应用场合 375
14.2 应用程序改造和功能新增 376
14.2.1 原登录模块的不足 376
14.2.2 新增系统日志模块 377
14.2.3 事前准备 377
14.3 自动启动Servlet 378
14.4 过滤器的Servlet 383
14.5 监听器的Servlet 385
14.6 文件下载的Servlet 387
14.6.1 通过向导创建
14.6.1 ExcelFileServlet 387
14.6.2 下载日志文件代码 389
14.6.3 改造welcome.jsp 391
14.7 总结 391
第15章 Struts开发 392
15.1 Struts概述 392
15.11 Struts技术框架 392
15.1.2 Struts 1.1新增功能 395
15.2 应用程序改造和升级 397
15.2.1 用Action控制器
15.2.1 替换switch.jsp 397
15.2.2 新增一个图书
15.2.2 管理模块 397
15.2.3 事前准备 398
15.3 改造原登录模块 398
15.3.1 用ActionForm截取
15.3.1 登录表单数据 398
15.3.2 用Action代替switch.jsp
15.3.2 的控制转换功能 401
15.4 新增图书记录 407
15.4.1 新增一个Struts
15.4.1 配置文件 407
15.4.2 图书ActionForm 409
15.4.3 新增图书JSP页面 411
15.4.4 创建BookInsertAction 415
15.5 总结 418
第16章 JSF开发 419
16.1 JSF快速学习 419
16.1.1 JSF简介 419
16.1.2 JSF原理 420
16.2 创建基于JSF框架
16.2 的Web应用 421
16.2.1 开始使用JSF前的准备 421
16.2.2 一个简单的JSF应用 422
16.3 在JBuilder中实战JSF 426
16.3.1 JBuilder提供
16.3.1 的JSF工具 426
16.3.2 模拟账户查询程序 429
16.3.3 字体编辑程序 435
16.4 总结 441
第17章 Cocoon开发 442
17.1 Cocoon简介 442
17.1.1 Web发布框架 442
17.1.2 什么是Cocoon 443
17.1.3 Cocoon的工作原理 443
17.1.4 XSP的工作原理 444
17.2 在JBuilder中实战Cocoon 446
17.2.1 创建Cocoon模块 446
17.2.2 一个最简单的XSP 448
17.2.3 利用ESQL从数据库
17.2.3 中读取数据 450
17.2.4 在XSP中发送电子邮件 456
17.3 总结 457
第四篇
第18章 XML开发 460
18.1 XML简介 460
18.1.1 XML文档规则 460
18.1.2 常用概念 461
18.1.3 第一个XML文档 462
18.1.4 XML结构化定义简介 463
18.1.5 XML转换简介 464
18.2 在JBuilder中实战XML 469
18.2.1 基于DTD生成XML 469
18.2.2 转换XML文档 471
18.2.3 XTable和XQuery组件 475
18.2.4 XMLDBMSQuery和
18.2.4 XMLDBMSTable组件 479
18.2.5 基于DTD实现数据绑定 483
18.3 XML解析 489
18.3.1 文档对象模型(DOM) 489
18.3.2 用于XML的简单
18.3.2 API(SAX) 492
18.3.3 使用SAX同步解析
18.3.3 XML数据流 496
18.3.4 选择合适的API 500
18.4 总结 500
第19章 EJB开发 501
19.1 J2EE 501
19.1.1 J2EE技术与EJB 502
19.2 EJB 503
19.2.1 EJB概要介绍 503
19.2.2 EJB形成原因 503
19.2.3 EJB的适用范围 504
19.2.4 EJB组成 504
19.2.5 EJB服务器和EJB容器 505
19.2.6 EJB类型 506
19.3 网上模拟ATM
19.3 提款机系统 507
19.3.1 系统介绍 507
19.3.2 用例介绍 508
19.3.3 应用程序功能组成 509
19.3.4 程序组成 510
19.4 模块编写准备工作 511
19.4.1 创建数据库 511
19.4.2 应用服务器的配置 512
19.4.3 数据源配置 514
19.4.4 创建工程和EJB模块 515
19.4.5 使用JBuilder开发
19.4.5 Account实体类 516
19.4.6 创建业务逻辑类 518
19.4.7 Web设计 521
19.4.8 测试程序 524
19.4.9 程序运行 525
19.5 总结 526
第20章 Web Service开发 527
20.1 Web Service简介 527
20.1.1 Web Service概述 527
20.1.2 Web Service相关概念 529
20.1.3 Web Service的特点 530
20.2 在JBuilder中实战Web Service 531
20.2.1 创建并测试Web Service 531
20.2.2 创建Web Service客户端 536
20.2.3 在Tomcat 5.0中部署
20.2.3 Web Service 539
20.2.4 传递复杂数据类型
20.2.4 的Web Service 540
20.2.5 传递大二进制数据
20.2.5 的Web Service 546
20.2.6 基于EJB创建
20.2.6 Web Service 548
20.3 JBuilder提供的
20.3 Web Service工具 549
20.3.1 SOAP报文侦听 549
20.3.2 Web Service搜索器 552
20.4 总结 553
第21章 CORBA开发 554
21.1 CORBA简介 554
21.1.1 什么是CORBA 554
21.1.2 ORB原理 555
21.1.3 CORBA与Java的关系 557
21.1.4 使用CORBA的优点 557
21.2 接口定义语言IDL介绍 558
21.2.1 OMG IDL数据类型 558
21.2.2 IDL设计 559
21.3 使用JDK开发CORBA应用 561
23.3.1 简单的CORBA应用 561
21.3.2 传递复杂数据类型
21.3.2 的CORBA应用 564
21.4 使用VisiBroker开发
21.4 CORBA应用 571
21.4.1 VisiBroker简介 571
21.4.2 基于VisiBroker开发
21.4.2 CORBA应用的步骤 572
21.4.3 基于VisiBroker开发
21.4.3 CORBA应用的实例 572
21.5 总结 574
第22章 无线应用开发 575
22.1 J2ME概述 575
22.1.1 J2ME介绍 575
22.1.2 J2ME总体架构 576
22.1.3 配置概述 576
22.1.4 简表概述 576
22.1.5 J2ME、J2SE与J2EE
22.1.5 之间的比较 577
22.1.6 J2ME在手机应用的前景 578
22.2 实例介绍 578
22.3 创建工程 579
22.3.1 工程的创建 579
22.4 入口主程序开发 580
22.4.1 MIDlet介绍 580
22.4.2 入口程序 581
22.5 RMS管理模块 583
22.5.1 RMS介绍 583
22.5.2 RMS管理 584
22.6 远程通信模块 590
22.6.1 网络编程介绍 590
22.6.2 远程通信模块开发 590
22.7 查询界面模块 593
22.7.1 查询界面设计 593
22.7.2 查询功能开发 594
22.8 结果显示模块 597
22.8.1 结果显示界面设计 597
22.8.2 结果显示功能开发 598
22.9 程序运行结果 599
22.10 应用程序打包及部署 599
22.10.1 打包 599
22.10.2 部署 600
22.11 其他配置 601
22.11.1 程序运行方法配置 601
22.11.2 更换模拟器 602
22.12 总结 603
第五篇
第23章 团队协作及版本控制 606
23.1 团队协作开发概述 606
23.1.1 VCS的作用 606
23.1.2 JBuilder对VCS的支持 607
23.2 安装配置CVS服务器 608
23.2.1 初始化CVS代码库 608
23.2.2 分配代码库访问权限 610
23.3 提交工程和下载工程 611
23.3.1 提交工程到
23.3.1 CVS服务器 611
23.3.2 从CVS服务器下载工程 614
23.4 CVS团队协作常用操作 616
23.4.1 添新文件到代码库 616
23.4.2 提交更改到CVS
23.4.2 服务器(Commit) 617
23.4.3 同步更新到本地
23.4.3 机器(Update) 617
23.4.4 合并更改(Merge) 617
23.4.5 删除文件 621
23.4.6 版本回溯和比较 621
23.4.7 批量提交和更新 622
23.5 用StarTeam进行团队开发 624
23.5.1 StarTeam概述 624
23.5.2 安装StarTeam服务器 625
23.5.3 启动StarTeam服务器 626
23.5.4 添加新用户 626
23.5.5 提交工程到StarTeam
23.5.5 服务器 628
23.5.6 从StarTeam服务器
23.5.6 下载工程 631
23.5.7 StarTeam的操作
23.5.7 界面介绍 632
23.6 变化监视的标识设置 633
23.7 总结 634
第24章 UML浏览器 635
24.1 Java和UML 635
24.2 JBuilder和UML 636
24.2.1 有限包依赖图 636
24.2.2 组合类图 637
24.3 JBuilder UML图 639
24.4 浏览UML图 641
24.4.1 UML浏览器 642
24.4.2 浏览包图 643
24.4.3 浏览类图 643
24.4.4 浏览内部类图 643
24.5 UML和结构窗格 644
24.6 UML相关配置 644
24.6.1 工程属性中相关配置 644
24.6.2 开发环境相关配置 646
24.7 总结 646
第25章 单元测试 647
25.1 自动测试代码的重要性 647
25.2 JUnit测试框架 648
25.2.1 简单的框架 648
25.2.2 测试固件(Fixture) 649
25.2.3 测试用例(TestCase) 650
25.2.4 测试套件(TestSuite) 650
25.2.5 测试运行器 651
25.3 业务类介绍 652
25.3.1 分段函数类 652
25.3.2 字符串处理类 653
25.4 创建测试用例 654
25.5 用套件捆绑运行多个测试用例 658
25.6 创建测试固件 661
25.6.1 JDBC测试固件 661
25.6.2 比较测试固件 667
25.7 测试运行配置 670
25.8 总结 672
第26章 创建Javadoc文档 674
26.1 什么是Javadoc文档 674
26.2 Javadoc标签介绍 677
26.3 编写Javadoc注释 682
26.3.1 Javadoc对话框 682
26.3.2 使用JavadocInsight 683
26.3.3 自定义的Javadoc标签 684
26.3.4 使用代码模板 685
26.3.5 Javadoc注释冲突 687
26.3.6 todo标签 688
26.4 创建Javadoc文档 689
26.5 总结 693
第27章 代码重构 694
27.1 认识重构 694
27.1.1 为什么要重构 694
27.1.2 何时着手重构 695
27.2 JBuilder对重构的支持 696
27.2.1 提供了哪些重构
27.2.1 的功能 697
27.2.2 重构对话框 697
27.2.3 重构一般操作步骤 698
27.3 重构之事前侦察 699
27.3.1 查看定义 699
27.3.2 查看引用 699
27.3.3 查看覆盖方法 700
27.4 重命名 700
27.4.1 值域及变量重命名 701
27.4.2 属性重命名 701
27.4.3 方法重命名 702
27.4.4 方法参数更改 703
27.4.5 类重命名 705
27.4.6 包重命名 705
27.5 类的内部提炼 706
27.5.1 提炼方法 706
27.5.2 内联方法 707
27.5.3 提炼变量 707
27.5.4 内联变量 708
27.6 类继承体系间的搬迁 709
27.6.1 搬迁方法 709
27.6.2 迁值域 710
27.6.3 提炼超类 711
27.6.4 提炼接口 712
27.7 无缝升级到JDK 5.0 713
27.7.1 使工程基于JDK 5.0 713
27.7.2 优化循环 713
27.7.3 自动装/拆箱 714
27.7.4 非泛型转泛型 715
27.8 杂项重构 716
27.8.1 优化import 716
27.8.2 自动添加异常捕捉 717
27.8.3 部署描述文件 719
27.8.4 EJB 720
27.8.5 代理 720
27.9 分布式重构 722
27.10 总结 725
第六篇
附录A 各种数据库连接关键代码 728
附录B 使用第三方工具开发XML 730
附录C Javadoc命令使用说明 733
第一篇
第1章 JBuilder 2005概述 2
1.1 功能介绍 2
1.2 新增特性 4
1.3 程序安装 5
1.3.1 不同版本的差异 5
1.3.2 硬件要求 6
1.3.3 安装步骤 7
1.4 理解安装目录 11
1.5 使用帮助 12
1.5.1 如何获取帮助 12
1.5.2 使用Help Viewer 13
1.6 常见问题解决之道 14
1.6.1 光标错位 14
1.6.2 汉字乱码 17
1.7 总结 17
第2章 Java语言基础 18
2.1 Java简介 18
2.1.1 Java发展史 18
2.1.2 Java的特点 19
2.1.3 关于Java的FAQ 19
2.2 Java语言基础 20
2.2.1 注释 20
2.2.2 Java中的关键字 21
2.2.3 基本数据类型 22
2.2.4 基本数据类型的转换 23
2.2.5 字面值 24
2.2.6 数组 25
2.2.7 运算符和表达式 27
2.3 流程控制 32
2.3.1 选择流程控制语句 33
2.3.2 循环语句及跳转 34
2.4 类和对象 37
2.4.1 类的一般结构 38
2.4.2 类的包 39
2.4.3 类的值域和方法 40
2.4.4 方法的重载和覆盖 42
2.4.5 类的构造函数 43
2.4.6 类的继承 44
2.4.7 类和接口 46
2.5 异常处理 47
2.5.1 Java中的异常结构 48
2.5.2 发生异常时的流程控制 49
2.5.3 抛出异常 50
2.6 JDK 5.0快速进阶 51
2.6.1 简易开发 51
2.6.2 提高扩展性和性能 51
2.6.3 监视和管理 52
2.6.4 新的JVM整形API 52
2.6.5 改进诊断能力 53
2.6.6 元数据Metadata 54
2.6.7 泛型 55
2.6.8 自动装/拆箱 56
2.6.9 增强型for循环 56
2.6.10 枚举化的类型 57
2.6.11 静态引入 57
2.6.12 格式化的输出 57
2.6.13 格式化的输入 57
2.6.14 不定参数 58
2.6.15 并行工具 58
2.6.16 其他的一些新特性 58
2.7 总结 59
第3章 JBuilder 2005集成开发环境 60
3.1 集成开发环境 60
3.1.1 菜单条 61
3.1.2 工具条 62
3.1.3 工程窗格 63
3.1.4 结构窗格 65
3.1.5 内容窗格 66
3.1.6 信息窗格 67
3.1.7 状态条 68
3.1.8 调整工作区效果 69
3.2 工程及工程组 70
3.2.1 何为工程 70
3.2.2 用工程向导创建一个工程 71
3.2.3 工程属性 73
3.2.4 工程组 74
3.3 维护类库 76
3.3.1 类库的结构 76
3.3.2 维护JBuilder类库 77
3.3.3 维护工程扩展类库 81
3.4 设置JDK 82
3.4.1 配置一个新的JDK 82
3.4.2 在工程中使用JDK 5.0 84
3.5 小结 85
第4章 编辑器——高效代码
第4章 开发之利器 87
4.1 编辑器界面组成 87
4.2 编辑器的一般设置 88
4.2.1 设置编辑器字体 88
4.2.2 调整编辑器的显示效果 89
4.2.3 动作触发设置 89
4.3 快捷键 91
4.3.1 快捷键模式 91
4.3.2 配置快捷键 91
4.3.3 常用快捷键 93
4.4 代码选择 96
4.4.1 一般性选择 96
4.4.2 块选择 96
4.5 智能拷贝 97
4.6 查找 98
4.7 用书签进行快速导航和定位 100
4.7.1 数字书签 100
4.7.2 文本书签 100
4.7.3 Todo标识 101
4.8 CodeInsight 101
4.9 代码模板 103
4.9.1 常用代码模板 103
4.9.2 使用代码模板 105
4.9.3 代码模板的设置 105
4.10 同步代码编辑 107
4.11 ErrorInsight 108
4.12 辅助显示支持 109
4.12.1 ScopeInsight 109
4.12.2 代码折叠 110
4.13 代码排版格式化 111
4.13.1 排版格式化的内容 111
4.13.2 设置和调用 112
4.14 总结 113
第5章 代码审查 114
5.1 何谓代码审查 114
5.2 使用代码审查 114
5.3 代码风格审查 116
5.3.1 “switch”必须带一个
5.3.1 default语句 116
5.3.2 应通过类名引用静态成员 116
5.3.3 避免复杂晦涩的代码 117
5.3.4 尽量使用赋值运算符 118
5.3.5 其他代码风格的审查 119
5.4 声明审查 120
5.4.1 避免命名覆盖 120
5.4.2 使用适合的修饰符 121
5.4.3 有关子类覆盖的审查 121
5.4.4 代码排列及先后顺序 121
5.5 命名风格 122
5.5.1 取消不良命名习惯 122
5.5.2 建立和国际接轨的包名 122
5.5.3 避免过于简单的变量名 122
5.6 潜在错误审查 123
5.6.1 聚焦switch 123
5.6.2 避免浮点值等值逻辑判断 125
5.6.3 用括号清晰化
5.6.3 复杂的表示式 126
5.6.4 字符串比较 126
5.7 各种画蛇添足的审查 126
5.7.1 将布尔变量和
5.7.1 布尔值比较 126
5.7.2 无用的成员 127
5.7.3 多余的接口修饰符 127
5.7.4 不必要的强制类型转换 128
5.7.5 多余的import包引入 128
5.8 其他 128
5.8.1 无作为的表达式 128
5.8.2 流程控制中存在
5.8.2 不可至的语句 129
5.8.3 无用的流程标签 130
5.9 总结 130
第6章 编译、运行、调试、
第6章 优化及打包 131
6.1 编译程序 131
6.1.1 关于代码编译 131
6.1.2 编译操作及编译器 131
6.1.3 编译器的设置 133
6.1.4 编译的错误信息 134
6.2 运行程序 135
6.2.1 邮件收发程序 135
6.2.2 运行程序文件 138
6.2.3 设置运行配置信息 139
6.3 调试程序 142
6.3.1 程序的错误类型 142
6.3.2 调试界面 142
6.3.3 调试Sender.java的
6.3.3 运行期错误 144
6.3.4 调试Sender.java的
6.3.4 逻辑错误 146
6.3.5 查看程序加载的类
6.3.5 及类的静态变量 148
6.3.6 多线程调试 149
6.4 Optimizeit代码优化工具 151
6.4.1 Profiler 152
6.4.2 Thread Debugger 154
6.4.3 Code Coverage 156
6.5 打包输出 157
6.5.1 何谓打包 157
6.5.2 混淆编译打包 158
6.5.3 将MailBox打包输出 159
6.5.4 运行打包档案程序文件 162
6.6 总结 163
第二篇
第7章 用户界面应用程序开发 166
7.1 用户界面设计器 166
7.2 布局管理器 167
7.2.1 为何使用布局管理器 167
7.2.2 经典布局管理器 168
7.2.3 JBuilder提供的
7.2.3 布局管理器 173
7.3 用户界面组件 174
7.4 事件处理模型 177
7.4.1 事件类 177
7.4.2 事件监听器 177
7.4.3 显式事件使能 181
7.4.4 适配器 182
7.5 文本编辑器 183
7.5.1 创建工程和主界面 183
7.5.2 加入一个多行文本框组件 186
7.5.3 创建菜单 188
7.5.4 加入一个FontChooser
7.5.4 对话框 190
7.5.5 使用FontChooser设置
7.5.5 多行文本框中的字体 192
7.5.6 添加菜单事件调用
7.5.6 JColorChooser 192
7.5.7 添加菜单事件清除多行
7.5.7 文本框的内容 193
7.5.8 添加文件选择对话框 193
7.5.9 添加从文件中读取
7.5.9 内容的方法 194
7.5.10 添加保存文件菜单
7.5.10 处理事件 195
7.5.11 添加代码监视文件
7.5.11 内容的变化 197
7.5.12 让工具栏工作起来 198
7.5.13 为多行文本框组件
7.5.13 添加事件处理 200
7.5.14 为多行文本框添加
7.5.14 上下文菜单 200
7.5.15 在窗口状态条中显示
7.5.15 文件及其状态 201
7.6 总结 203
第8章 JavaBean开发 204
8.1 什么是Bean 204
8.2 Bean的编写过程 204
8.3 Bean属性和事件 206
8.3.1 Bean的属性 206
8.3.2 属性编辑器 207
8.3.3 属性定制器 208
8.3.4 Bean的事件 209
8.4 整数值范围Bean功能介绍 209
8.5 IntValueBean编写 210
8.5.1 创建IntValueBean 210
8.5.2 序列化组件 212
8.5.3 添加关联属性 212
8.5.4 成为属性变化的监听器 215
8.5.5 添加限制属性 218
8.5.6 添加得到或失去焦点事件 220
8.6 建立RangeBean 223
8.6.1 创建RangeBean 223
8.6.2 代理设置IntValueBean
8.6.2 的bgColor属性 225
8.6.3 代理设置IntValueBean
8.6.3 的intValue属性 226
8.6.4 成为限制属性否决监听器 226
8.7 BeanInfo 229
8.8 属性编辑器 231
8.8.1 生成属性编辑器 232
8.8.2 在BeanInfo中声明
8.8.2 属性编辑器 234
8.9 Bean定制器 236
8.9.1 创建Bean的定制器 236
8.9.2 在BeanInfo中说明
8.9.2 Bean的定制器 238
8.10 打包输出 239
8.10.1 为Bean设定图标 239
8.10.2 查看Bean的各部分内容 240
8.10.3 打成JAR包 240
8.11 添加到组件面板 241
8.12 总结 243
第9章 JDataStore数据库开发 244
9.1 DataStore简介 244
9.1.1 JDataStore的特性 244
9.1.2 JDataStore的配置 244
9.2 用JDataStore浏览器管理数据库 246
9.2.1 启动JDataStore 246
9.2.2 创建JDataStore文件 246
9.2.3 打开JDataStore文件 247
9.3 如何创建表及索引 247
9.3.1 创建表 247
9.3.2 创建索引 248
9.4 JDataStore的安全性管理 248
9.4.1 管理用户 248
9.4.2 修改密码 248
9.4.3 数据库加密 249
9.5 DataStore数据库简单应用 249
9.6 数据库图形用户界面程序 251
9.7 JDataStore的数据导入导出 255
9.8 JDataStore在非结构化
9.8 存储方面的应用 259
9.9 发布基于JDataStore
9.9 的应用程序 264
9.10 总结 264
第10章 DataExpress和
第10章 dbSwing数据库开发 265
10.1 DataExpress简介 265
10.1.1 DataExpress的主要组件 265
10.1.2 DataExpress组件
10.1.2 说明及其属性 266
10.1.3 DataExpress的体系结构 268
10.1.4 模块化DataExpress
10.1.4 体系结构的优点 269
10.2 使用DataExpress和dbSwing
10.2 组件编写数据库应用程序 269
10.2.1 访问文本数据 269
10.2.2 数据库图形用户界面程序 274
10.2.3 允许“脱机”修改
10.2.3 的数据集 278
10.2.4 数据集二次处理 281
10.2.5 使用存储过程
10.2.5 返回数据集 285
10.2.6 序列化数据集 288
10.2.7 触发器 292
10.3 总结 294
第11章 Applet开发 295
11.1 Applet概述 295
11.2 关于浏览器 296
11.3 指法练习Applet游戏介绍 298
11.3.1 界面及功能 298
11.3.2 程序组成 298
11.4 利用向导生成Applet 301
11.5 设计Applet界面 305
11.6 游戏的统计数据 306
11.7 字母下落线程 307
11.8 添加击中音效 309
11.9 字母下落线程的产生器线程 310
11.10 响应用户按键事件 311
11.11 控制游戏 312
11.11.1 为按钮添加图标 312
11.11.2 通过按钮事件
11.11.2 控制游戏 313
11.11.3 保存游戏统计数据 314
11.11.4 关注Applet生命周期 315
11.12 打包并进行数字签名 317
11.12.1 数字签名技术 317
11.12.2 数字证书的生成 318
11.12.3 打包 319
11.12.4 在文件中引用
11.12.4 Applet包文件 321
11.13 使用插件下载JRE 322
11.14 总结 324
第三篇
第12章 Web应用程序开发基础 326
12.1 Web应用程序概述 326
12.2 Web开发的各项技术 327
12.3 Web开发的过程 329
12.4 Web模块和WAR文件 330
12.4.1 什么是Web模块 330
12.4.2 什么是WAR文件 330
12.4.3 如何用JBuilder向导
12.4.3 创建Web模块 331
12.4.4 Web模块的
12.4.4 目录结构 333
12.5 更改Web模块设置 335
12.5.1 Module设置页 335
12.5.2 Web设置页 336
12.5.3 Clean设置页 336
12.5.4 Build设置页 337
12.5.5 Content设置页 338
12.6 配置Web应用服务器 340
12.7 结束 341
第13章 JSP开发 342
13.1 JSP开发必备 342
13.1.1 JSP概述 342
13.1.2 JSP标签 343
13.1.3 JSP隐含对象 344
13.1.4 JSP和对应的Servlet 345
13.2 用户登录Web应用
13.2 程序功能介绍 346
13.3 模块编写准备工作 348
13.3.1 创建数据库表 348
13.3.2 创建工程及Web模块 349
13.3.3 编写获取数据库连接类 349
13.4 登录页面login.jsp 351
13.4.1 创建login.jsp 351
13.4.2 将用户列表改为动态 353
13.5 切换控制switch.jsp 355
13.5.1 编写User.java 356
13.5.2 编写页面程序 357
13.6 错误处理页面error.jsp 361
13.7 登录失败fail.jsp 362
13.8 欢迎页面welcome.jsp 363
13.8.1 将第三方标签库
13.8.1 配置到JBuilder中 363
13.8.2 创建欢迎JSP页面 365
13.9 quit.jsp退出处理页面 368
13.10 用户登录和退出日志 368
13.11 程序部署 371
13.12 总结 373
第14章 Servlet开发 374
14.1 Servlet开发必备 374
14.1.1 Servlet工作方式 374
14.1.2 Servlet的特性
14.1.2 及应用场合 375
14.2 应用程序改造和功能新增 376
14.2.1 原登录模块的不足 376
14.2.2 新增系统日志模块 377
14.2.3 事前准备 377
14.3 自动启动Servlet 378
14.4 过滤器的Servlet 383
14.5 监听器的Servlet 385
14.6 文件下载的Servlet 387
14.6.1 通过向导创建
14.6.1 ExcelFileServlet 387
14.6.2 下载日志文件代码 389
14.6.3 改造welcome.jsp 391
14.7 总结 391
第15章 Struts开发 392
15.1 Struts概述 392
15.11 Struts技术框架 392
15.1.2 Struts 1.1新增功能 395
15.2 应用程序改造和升级 397
15.2.1 用Action控制器
15.2.1 替换switch.jsp 397
15.2.2 新增一个图书
15.2.2 管理模块 397
15.2.3 事前准备 398
15.3 改造原登录模块 398
15.3.1 用ActionForm截取
15.3.1 登录表单数据 398
15.3.2 用Action代替switch.jsp
15.3.2 的控制转换功能 401
15.4 新增图书记录 407
15.4.1 新增一个Struts
15.4.1 配置文件 407
15.4.2 图书ActionForm 409
15.4.3 新增图书JSP页面 411
15.4.4 创建BookInsertAction 415
15.5 总结 418
第16章 JSF开发 419
16.1 JSF快速学习 419
16.1.1 JSF简介 419
16.1.2 JSF原理 420
16.2 创建基于JSF框架
16.2 的Web应用 421
16.2.1 开始使用JSF前的准备 421
16.2.2 一个简单的JSF应用 422
16.3 在JBuilder中实战JSF 426
16.3.1 JBuilder提供
16.3.1 的JSF工具 426
16.3.2 模拟账户查询程序 429
16.3.3 字体编辑程序 435
16.4 总结 441
第17章 Cocoon开发 442
17.1 Cocoon简介 442
17.1.1 Web发布框架 442
17.1.2 什么是Cocoon 443
17.1.3 Cocoon的工作原理 443
17.1.4 XSP的工作原理 444
17.2 在JBuilder中实战Cocoon 446
17.2.1 创建Cocoon模块 446
17.2.2 一个最简单的XSP 448
17.2.3 利用ESQL从数据库
17.2.3 中读取数据 450
17.2.4 在XSP中发送电子邮件 456
17.3 总结 457
第四篇
第18章 XML开发 460
18.1 XML简介 460
18.1.1 XML文档规则 460
18.1.2 常用概念 461
18.1.3 第一个XML文档 462
18.1.4 XML结构化定义简介 463
18.1.5 XML转换简介 464
18.2 在JBuilder中实战XML 469
18.2.1 基于DTD生成XML 469
18.2.2 转换XML文档 471
18.2.3 XTable和XQuery组件 475
18.2.4 XMLDBMSQuery和
18.2.4 XMLDBMSTable组件 479
18.2.5 基于DTD实现数据绑定 483
18.3 XML解析 489
18.3.1 文档对象模型(DOM) 489
18.3.2 用于XML的简单
18.3.2 API(SAX) 492
18.3.3 使用SAX同步解析
18.3.3 XML数据流 496
18.3.4 选择合适的API 500
18.4 总结 500
第19章 EJB开发 501
19.1 J2EE 501
19.1.1 J2EE技术与EJB 502
19.2 EJB 503
19.2.1 EJB概要介绍 503
19.2.2 EJB形成原因 503
19.2.3 EJB的适用范围 504
19.2.4 EJB组成 504
19.2.5 EJB服务器和EJB容器 505
19.2.6 EJB类型 506
19.3 网上模拟ATM
19.3 提款机系统 507
19.3.1 系统介绍 507
19.3.2 用例介绍 508
19.3.3 应用程序功能组成 509
19.3.4 程序组成 510
19.4 模块编写准备工作 511
19.4.1 创建数据库 511
19.4.2 应用服务器的配置 512
19.4.3 数据源配置 514
19.4.4 创建工程和EJB模块 515
19.4.5 使用JBuilder开发
19.4.5 Account实体类 516
19.4.6 创建业务逻辑类 518
19.4.7 Web设计 521
19.4.8 测试程序 524
19.4.9 程序运行 525
19.5 总结 526
第20章 Web Service开发 527
20.1 Web Service简介 527
20.1.1 Web Service概述 527
20.1.2 Web Service相关概念 529
20.1.3 Web Service的特点 530
20.2 在JBuilder中实战Web Service 531
20.2.1 创建并测试Web Service 531
20.2.2 创建Web Service客户端 536
20.2.3 在Tomcat 5.0中部署
20.2.3 Web Service 539
20.2.4 传递复杂数据类型
20.2.4 的Web Service 540
20.2.5 传递大二进制数据
20.2.5 的Web Service 546
20.2.6 基于EJB创建
20.2.6 Web Service 548
20.3 JBuilder提供的
20.3 Web Service工具 549
20.3.1 SOAP报文侦听 549
20.3.2 Web Service搜索器 552
20.4 总结 553
第21章 CORBA开发 554
21.1 CORBA简介 554
21.1.1 什么是CORBA 554
21.1.2 ORB原理 555
21.1.3 CORBA与Java的关系 557
21.1.4 使用CORBA的优点 557
21.2 接口定义语言IDL介绍 558
21.2.1 OMG IDL数据类型 558
21.2.2 IDL设计 559
21.3 使用JDK开发CORBA应用 561
23.3.1 简单的CORBA应用 561
21.3.2 传递复杂数据类型
21.3.2 的CORBA应用 564
21.4 使用VisiBroker开发
21.4 CORBA应用 571
21.4.1 VisiBroker简介 571
21.4.2 基于VisiBroker开发
21.4.2 CORBA应用的步骤 572
21.4.3 基于VisiBroker开发
21.4.3 CORBA应用的实例 572
21.5 总结 574
第22章 无线应用开发 575
22.1 J2ME概述 575
22.1.1 J2ME介绍 575
22.1.2 J2ME总体架构 576
22.1.3 配置概述 576
22.1.4 简表概述 576
22.1.5 J2ME、J2SE与J2EE
22.1.5 之间的比较 577
22.1.6 J2ME在手机应用的前景 578
22.2 实例介绍 578
22.3 创建工程 579
22.3.1 工程的创建 579
22.4 入口主程序开发 580
22.4.1 MIDlet介绍 580
22.4.2 入口程序 581
22.5 RMS管理模块 583
22.5.1 RMS介绍 583
22.5.2 RMS管理 584
22.6 远程通信模块 590
22.6.1 网络编程介绍 590
22.6.2 远程通信模块开发 590
22.7 查询界面模块 593
22.7.1 查询界面设计 593
22.7.2 查询功能开发 594
22.8 结果显示模块 597
22.8.1 结果显示界面设计 597
22.8.2 结果显示功能开发 598
22.9 程序运行结果 599
22.10 应用程序打包及部署 599
22.10.1 打包 599
22.10.2 部署 600
22.11 其他配置 601
22.11.1 程序运行方法配置 601
22.11.2 更换模拟器 602
22.12 总结 603
第五篇
第23章 团队协作及版本控制 606
23.1 团队协作开发概述 606
23.1.1 VCS的作用 606
23.1.2 JBuilder对VCS的支持 607
23.2 安装配置CVS服务器 608
23.2.1 初始化CVS代码库 608
23.2.2 分配代码库访问权限 610
23.3 提交工程和下载工程 611
23.3.1 提交工程到
23.3.1 CVS服务器 611
23.3.2 从CVS服务器下载工程 614
23.4 CVS团队协作常用操作 616
23.4.1 添新文件到代码库 616
23.4.2 提交更改到CVS
23.4.2 服务器(Commit) 617
23.4.3 同步更新到本地
23.4.3 机器(Update) 617
23.4.4 合并更改(Merge) 617
23.4.5 删除文件 621
23.4.6 版本回溯和比较 621
23.4.7 批量提交和更新 622
23.5 用StarTeam进行团队开发 624
23.5.1 StarTeam概述 624
23.5.2 安装StarTeam服务器 625
23.5.3 启动StarTeam服务器 626
23.5.4 添加新用户 626
23.5.5 提交工程到StarTeam
23.5.5 服务器 628
23.5.6 从StarTeam服务器
23.5.6 下载工程 631
23.5.7 StarTeam的操作
23.5.7 界面介绍 632
23.6 变化监视的标识设置 633
23.7 总结 634
第24章 UML浏览器 635
24.1 Java和UML 635
24.2 JBuilder和UML 636
24.2.1 有限包依赖图 636
24.2.2 组合类图 637
24.3 JBuilder UML图 639
24.4 浏览UML图 641
24.4.1 UML浏览器 642
24.4.2 浏览包图 643
24.4.3 浏览类图 643
24.4.4 浏览内部类图 643
24.5 UML和结构窗格 644
24.6 UML相关配置 644
24.6.1 工程属性中相关配置 644
24.6.2 开发环境相关配置 646
24.7 总结 646
第25章 单元测试 647
25.1 自动测试代码的重要性 647
25.2 JUnit测试框架 648
25.2.1 简单的框架 648
25.2.2 测试固件(Fixture) 649
25.2.3 测试用例(TestCase) 650
25.2.4 测试套件(TestSuite) 650
25.2.5 测试运行器 651
25.3 业务类介绍 652
25.3.1 分段函数类 652
25.3.2 字符串处理类 653
25.4 创建测试用例 654
25.5 用套件捆绑运行多个测试用例 658
25.6 创建测试固件 661
25.6.1 JDBC测试固件 661
25.6.2 比较测试固件 667
25.7 测试运行配置 670
25.8 总结 672
第26章 创建Javadoc文档 674
26.1 什么是Javadoc文档 674
26.2 Javadoc标签介绍 677
26.3 编写Javadoc注释 682
26.3.1 Javadoc对话框 682
26.3.2 使用JavadocInsight 683
26.3.3 自定义的Javadoc标签 684
26.3.4 使用代码模板 685
26.3.5 Javadoc注释冲突 687
26.3.6 todo标签 688
26.4 创建Javadoc文档 689
26.5 总结 693
第27章 代码重构 694
27.1 认识重构 694
27.1.1 为什么要重构 694
27.1.2 何时着手重构 695
27.2 JBuilder对重构的支持 696
27.2.1 提供了哪些重构
27.2.1 的功能 697
27.2.2 重构对话框 697
27.2.3 重构一般操作步骤 698
27.3 重构之事前侦察 699
27.3.1 查看定义 699
27.3.2 查看引用 699
27.3.3 查看覆盖方法 700
27.4 重命名 700
27.4.1 值域及变量重命名 701
27.4.2 属性重命名 701
27.4.3 方法重命名 702
27.4.4 方法参数更改 703
27.4.5 类重命名 705
27.4.6 包重命名 705
27.5 类的内部提炼 706
27.5.1 提炼方法 706
27.5.2 内联方法 707
27.5.3 提炼变量 707
27.5.4 内联变量 708
27.6 类继承体系间的搬迁 709
27.6.1 搬迁方法 709
27.6.2 迁值域 710
27.6.3 提炼超类 711
27.6.4 提炼接口 712
27.7 无缝升级到JDK 5.0 713
27.7.1 使工程基于JDK 5.0 713
27.7.2 优化循环 713
27.7.3 自动装/拆箱 714
27.7.4 非泛型转泛型 715
27.8 杂项重构 716
27.8.1 优化import 716
27.8.2 自动添加异常捕捉 717
27.8.3 部署描述文件 719
27.8.4 EJB 720
27.8.5 代理 720
27.9 分布式重构 722
27.10 总结 725
第六篇
附录A 各种数据库连接关键代码 728
附录B 使用第三方工具开发XML 730
附录C Javadoc命令使用说明 733
第1章 JBuilder 2005概述 2
1.1 功能介绍 2
1.2 新增特性 4
1.3 程序安装 5
1.3.1 不同版本的差异 5
1.3.2 硬件要求 6
1.3.3 安装步骤 7
1.4 理解安装目录 11
1.5 使用帮助 12
1.5.1 如何获取帮助 12
1.5.2 使用Help Viewer 13
1.6 常见问题解决之道 14
1.6.1 光标错位 14
1.6.2 汉字乱码 17
1.7 总结 17
第2章 Java语言基础 18
2.1 Java简介 18
2.1.1 Java发展史 18
2.1.2 Java的特点 19
2.1.3 关于Java的FAQ 19
2.2 Java语言基础 20
2.2.1 注释 20
2.2.2 Java中的关键字 21
2.2.3 基本数据类型 22
2.2.4 基本数据类型的转换 23
2.2.5 字面值 24
2.2.6 数组 25
2.2.7 运算符和表达式 27
2.3 流程控制 32
2.3.1 选择流程控制语句 33
2.3.2 循环语句及跳转 34
2.4 类和对象 37
2.4.1 类的一般结构 38
2.4.2 类的包 39
2.4.3 类的值域和方法 40
2.4.4 方法的重载和覆盖 42
2.4.5 类的构造函数 43
2.4.6 类的继承 44
2.4.7 类和接口 46
2.5 异常处理 47
2.5.1 Java中的异常结构 48
2.5.2 发生异常时的流程控制 49
2.5.3 抛出异常 50
2.6 JDK 5.0快速进阶 51
2.6.1 简易开发 51
2.6.2 提高扩展性和性能 51
2.6.3 监视和管理 52
2.6.4 新的JVM整形API 52
2.6.5 改进诊断能力 53
2.6.6 元数据Metadata 54
2.6.7 泛型 55
2.6.8 自动装/拆箱 56
2.6.9 增强型for循环 56
2.6.10 枚举化的类型 57
2.6.11 静态引入 57
2.6.12 格式化的输出 57
2.6.13 格式化的输入 57
2.6.14 不定参数 58
2.6.15 并行工具 58
2.6.16 其他的一些新特性 58
2.7 总结 59
第3章 JBuilder 2005集成开发环境 60
3.1 集成开发环境 60
3.1.1 菜单条 61
3.1.2 工具条 62
3.1.3 工程窗格 63
3.1.4 结构窗格 65
3.1.5 内容窗格 66
3.1.6 信息窗格 67
3.1.7 状态条 68
3.1.8 调整工作区效果 69
3.2 工程及工程组 70
3.2.1 何为工程 70
3.2.2 用工程向导创建一个工程 71
3.2.3 工程属性 73
3.2.4 工程组 74
3.3 维护类库 76
3.3.1 类库的结构 76
3.3.2 维护JBuilder类库 77
3.3.3 维护工程扩展类库 81
3.4 设置JDK 82
3.4.1 配置一个新的JDK 82
3.4.2 在工程中使用JDK 5.0 84
3.5 小结 85
第4章 编辑器——高效代码
第4章 开发之利器 87
4.1 编辑器界面组成 87
4.2 编辑器的一般设置 88
4.2.1 设置编辑器字体 88
4.2.2 调整编辑器的显示效果 89
4.2.3 动作触发设置 89
4.3 快捷键 91
4.3.1 快捷键模式 91
4.3.2 配置快捷键 91
4.3.3 常用快捷键 93
4.4 代码选择 96
4.4.1 一般性选择 96
4.4.2 块选择 96
4.5 智能拷贝 97
4.6 查找 98
4.7 用书签进行快速导航和定位 100
4.7.1 数字书签 100
4.7.2 文本书签 100
4.7.3 Todo标识 101
4.8 CodeInsight 101
4.9 代码模板 103
4.9.1 常用代码模板 103
4.9.2 使用代码模板 105
4.9.3 代码模板的设置 105
4.10 同步代码编辑 107
4.11 ErrorInsight 108
4.12 辅助显示支持 109
4.12.1 ScopeInsight 109
4.12.2 代码折叠 110
4.13 代码排版格式化 111
4.13.1 排版格式化的内容 111
4.13.2 设置和调用 112
4.14 总结 113
第5章 代码审查 114
5.1 何谓代码审查 114
5.2 使用代码审查 114
5.3 代码风格审查 116
5.3.1 “switch”必须带一个
5.3.1 default语句 116
5.3.2 应通过类名引用静态成员 116
5.3.3 避免复杂晦涩的代码 117
5.3.4 尽量使用赋值运算符 118
5.3.5 其他代码风格的审查 119
5.4 声明审查 120
5.4.1 避免命名覆盖 120
5.4.2 使用适合的修饰符 121
5.4.3 有关子类覆盖的审查 121
5.4.4 代码排列及先后顺序 121
5.5 命名风格 122
5.5.1 取消不良命名习惯 122
5.5.2 建立和国际接轨的包名 122
5.5.3 避免过于简单的变量名 122
5.6 潜在错误审查 123
5.6.1 聚焦switch 123
5.6.2 避免浮点值等值逻辑判断 125
5.6.3 用括号清晰化
5.6.3 复杂的表示式 126
5.6.4 字符串比较 126
5.7 各种画蛇添足的审查 126
5.7.1 将布尔变量和
5.7.1 布尔值比较 126
5.7.2 无用的成员 127
5.7.3 多余的接口修饰符 127
5.7.4 不必要的强制类型转换 128
5.7.5 多余的import包引入 128
5.8 其他 128
5.8.1 无作为的表达式 128
5.8.2 流程控制中存在
5.8.2 不可至的语句 129
5.8.3 无用的流程标签 130
5.9 总结 130
第6章 编译、运行、调试、
第6章 优化及打包 131
6.1 编译程序 131
6.1.1 关于代码编译 131
6.1.2 编译操作及编译器 131
6.1.3 编译器的设置 133
6.1.4 编译的错误信息 134
6.2 运行程序 135
6.2.1 邮件收发程序 135
6.2.2 运行程序文件 138
6.2.3 设置运行配置信息 139
6.3 调试程序 142
6.3.1 程序的错误类型 142
6.3.2 调试界面 142
6.3.3 调试Sender.java的
6.3.3 运行期错误 144
6.3.4 调试Sender.java的
6.3.4 逻辑错误 146
6.3.5 查看程序加载的类
6.3.5 及类的静态变量 148
6.3.6 多线程调试 149
6.4 Optimizeit代码优化工具 151
6.4.1 Profiler 152
6.4.2 Thread Debugger 154
6.4.3 Code Coverage 156
6.5 打包输出 157
6.5.1 何谓打包 157
6.5.2 混淆编译打包 158
6.5.3 将MailBox打包输出 159
6.5.4 运行打包档案程序文件 162
6.6 总结 163
第二篇
第7章 用户界面应用程序开发 166
7.1 用户界面设计器 166
7.2 布局管理器 167
7.2.1 为何使用布局管理器 167
7.2.2 经典布局管理器 168
7.2.3 JBuilder提供的
7.2.3 布局管理器 173
7.3 用户界面组件 174
7.4 事件处理模型 177
7.4.1 事件类 177
7.4.2 事件监听器 177
7.4.3 显式事件使能 181
7.4.4 适配器 182
7.5 文本编辑器 183
7.5.1 创建工程和主界面 183
7.5.2 加入一个多行文本框组件 186
7.5.3 创建菜单 188
7.5.4 加入一个FontChooser
7.5.4 对话框 190
7.5.5 使用FontChooser设置
7.5.5 多行文本框中的字体 192
7.5.6 添加菜单事件调用
7.5.6 JColorChooser 192
7.5.7 添加菜单事件清除多行
7.5.7 文本框的内容 193
7.5.8 添加文件选择对话框 193
7.5.9 添加从文件中读取
7.5.9 内容的方法 194
7.5.10 添加保存文件菜单
7.5.10 处理事件 195
7.5.11 添加代码监视文件
7.5.11 内容的变化 197
7.5.12 让工具栏工作起来 198
7.5.13 为多行文本框组件
7.5.13 添加事件处理 200
7.5.14 为多行文本框添加
7.5.14 上下文菜单 200
7.5.15 在窗口状态条中显示
7.5.15 文件及其状态 201
7.6 总结 203
第8章 JavaBean开发 204
8.1 什么是Bean 204
8.2 Bean的编写过程 204
8.3 Bean属性和事件 206
8.3.1 Bean的属性 206
8.3.2 属性编辑器 207
8.3.3 属性定制器 208
8.3.4 Bean的事件 209
8.4 整数值范围Bean功能介绍 209
8.5 IntValueBean编写 210
8.5.1 创建IntValueBean 210
8.5.2 序列化组件 212
8.5.3 添加关联属性 212
8.5.4 成为属性变化的监听器 215
8.5.5 添加限制属性 218
8.5.6 添加得到或失去焦点事件 220
8.6 建立RangeBean 223
8.6.1 创建RangeBean 223
8.6.2 代理设置IntValueBean
8.6.2 的bgColor属性 225
8.6.3 代理设置IntValueBean
8.6.3 的intValue属性 226
8.6.4 成为限制属性否决监听器 226
8.7 BeanInfo 229
8.8 属性编辑器 231
8.8.1 生成属性编辑器 232
8.8.2 在BeanInfo中声明
8.8.2 属性编辑器 234
8.9 Bean定制器 236
8.9.1 创建Bean的定制器 236
8.9.2 在BeanInfo中说明
8.9.2 Bean的定制器 238
8.10 打包输出 239
8.10.1 为Bean设定图标 239
8.10.2 查看Bean的各部分内容 240
8.10.3 打成JAR包 240
8.11 添加到组件面板 241
8.12 总结 243
第9章 JDataStore数据库开发 244
9.1 DataStore简介 244
9.1.1 JDataStore的特性 244
9.1.2 JDataStore的配置 244
9.2 用JDataStore浏览器管理数据库 246
9.2.1 启动JDataStore 246
9.2.2 创建JDataStore文件 246
9.2.3 打开JDataStore文件 247
9.3 如何创建表及索引 247
9.3.1 创建表 247
9.3.2 创建索引 248
9.4 JDataStore的安全性管理 248
9.4.1 管理用户 248
9.4.2 修改密码 248
9.4.3 数据库加密 249
9.5 DataStore数据库简单应用 249
9.6 数据库图形用户界面程序 251
9.7 JDataStore的数据导入导出 255
9.8 JDataStore在非结构化
9.8 存储方面的应用 259
9.9 发布基于JDataStore
9.9 的应用程序 264
9.10 总结 264
第10章 DataExpress和
第10章 dbSwing数据库开发 265
10.1 DataExpress简介 265
10.1.1 DataExpress的主要组件 265
10.1.2 DataExpress组件
10.1.2 说明及其属性 266
10.1.3 DataExpress的体系结构 268
10.1.4 模块化DataExpress
10.1.4 体系结构的优点 269
10.2 使用DataExpress和dbSwing
10.2 组件编写数据库应用程序 269
10.2.1 访问文本数据 269
10.2.2 数据库图形用户界面程序 274
10.2.3 允许“脱机”修改
10.2.3 的数据集 278
10.2.4 数据集二次处理 281
10.2.5 使用存储过程
10.2.5 返回数据集 285
10.2.6 序列化数据集 288
10.2.7 触发器 292
10.3 总结 294
第11章 Applet开发 295
11.1 Applet概述 295
11.2 关于浏览器 296
11.3 指法练习Applet游戏介绍 298
11.3.1 界面及功能 298
11.3.2 程序组成 298
11.4 利用向导生成Applet 301
11.5 设计Applet界面 305
11.6 游戏的统计数据 306
11.7 字母下落线程 307
11.8 添加击中音效 309
11.9 字母下落线程的产生器线程 310
11.10 响应用户按键事件 311
11.11 控制游戏 312
11.11.1 为按钮添加图标 312
11.11.2 通过按钮事件
11.11.2 控制游戏 313
11.11.3 保存游戏统计数据 314
11.11.4 关注Applet生命周期 315
11.12 打包并进行数字签名 317
11.12.1 数字签名技术 317
11.12.2 数字证书的生成 318
11.12.3 打包 319
11.12.4 在文件中引用
11.12.4 Applet包文件 321
11.13 使用插件下载JRE 322
11.14 总结 324
第三篇
第12章 Web应用程序开发基础 326
12.1 Web应用程序概述 326
12.2 Web开发的各项技术 327
12.3 Web开发的过程 329
12.4 Web模块和WAR文件 330
12.4.1 什么是Web模块 330
12.4.2 什么是WAR文件 330
12.4.3 如何用JBuilder向导
12.4.3 创建Web模块 331
12.4.4 Web模块的
12.4.4 目录结构 333
12.5 更改Web模块设置 335
12.5.1 Module设置页 335
12.5.2 Web设置页 336
12.5.3 Clean设置页 336
12.5.4 Build设置页 337
12.5.5 Content设置页 338
12.6 配置Web应用服务器 340
12.7 结束 341
第13章 JSP开发 342
13.1 JSP开发必备 342
13.1.1 JSP概述 342
13.1.2 JSP标签 343
13.1.3 JSP隐含对象 344
13.1.4 JSP和对应的Servlet 345
13.2 用户登录Web应用
13.2 程序功能介绍 346
13.3 模块编写准备工作 348
13.3.1 创建数据库表 348
13.3.2 创建工程及Web模块 349
13.3.3 编写获取数据库连接类 349
13.4 登录页面login.jsp 351
13.4.1 创建login.jsp 351
13.4.2 将用户列表改为动态 353
13.5 切换控制switch.jsp 355
13.5.1 编写User.java 356
13.5.2 编写页面程序 357
13.6 错误处理页面error.jsp 361
13.7 登录失败fail.jsp 362
13.8 欢迎页面welcome.jsp 363
13.8.1 将第三方标签库
13.8.1 配置到JBuilder中 363
13.8.2 创建欢迎JSP页面 365
13.9 quit.jsp退出处理页面 368
13.10 用户登录和退出日志 368
13.11 程序部署 371
13.12 总结 373
第14章 Servlet开发 374
14.1 Servlet开发必备 374
14.1.1 Servlet工作方式 374
14.1.2 Servlet的特性
14.1.2 及应用场合 375
14.2 应用程序改造和功能新增 376
14.2.1 原登录模块的不足 376
14.2.2 新增系统日志模块 377
14.2.3 事前准备 377
14.3 自动启动Servlet 378
14.4 过滤器的Servlet 383
14.5 监听器的Servlet 385
14.6 文件下载的Servlet 387
14.6.1 通过向导创建
14.6.1 ExcelFileServlet 387
14.6.2 下载日志文件代码 389
14.6.3 改造welcome.jsp 391
14.7 总结 391
第15章 Struts开发 392
15.1 Struts概述 392
15.11 Struts技术框架 392
15.1.2 Struts 1.1新增功能 395
15.2 应用程序改造和升级 397
15.2.1 用Action控制器
15.2.1 替换switch.jsp 397
15.2.2 新增一个图书
15.2.2 管理模块 397
15.2.3 事前准备 398
15.3 改造原登录模块 398
15.3.1 用ActionForm截取
15.3.1 登录表单数据 398
15.3.2 用Action代替switch.jsp
15.3.2 的控制转换功能 401
15.4 新增图书记录 407
15.4.1 新增一个Struts
15.4.1 配置文件 407
15.4.2 图书ActionForm 409
15.4.3 新增图书JSP页面 411
15.4.4 创建BookInsertAction 415
15.5 总结 418
第16章 JSF开发 419
16.1 JSF快速学习 419
16.1.1 JSF简介 419
16.1.2 JSF原理 420
16.2 创建基于JSF框架
16.2 的Web应用 421
16.2.1 开始使用JSF前的准备 421
16.2.2 一个简单的JSF应用 422
16.3 在JBuilder中实战JSF 426
16.3.1 JBuilder提供
16.3.1 的JSF工具 426
16.3.2 模拟账户查询程序 429
16.3.3 字体编辑程序 435
16.4 总结 441
第17章 Cocoon开发 442
17.1 Cocoon简介 442
17.1.1 Web发布框架 442
17.1.2 什么是Cocoon 443
17.1.3 Cocoon的工作原理 443
17.1.4 XSP的工作原理 444
17.2 在JBuilder中实战Cocoon 446
17.2.1 创建Cocoon模块 446
17.2.2 一个最简单的XSP 448
17.2.3 利用ESQL从数据库
17.2.3 中读取数据 450
17.2.4 在XSP中发送电子邮件 456
17.3 总结 457
第四篇
第18章 XML开发 460
18.1 XML简介 460
18.1.1 XML文档规则 460
18.1.2 常用概念 461
18.1.3 第一个XML文档 462
18.1.4 XML结构化定义简介 463
18.1.5 XML转换简介 464
18.2 在JBuilder中实战XML 469
18.2.1 基于DTD生成XML 469
18.2.2 转换XML文档 471
18.2.3 XTable和XQuery组件 475
18.2.4 XMLDBMSQuery和
18.2.4 XMLDBMSTable组件 479
18.2.5 基于DTD实现数据绑定 483
18.3 XML解析 489
18.3.1 文档对象模型(DOM) 489
18.3.2 用于XML的简单
18.3.2 API(SAX) 492
18.3.3 使用SAX同步解析
18.3.3 XML数据流 496
18.3.4 选择合适的API 500
18.4 总结 500
第19章 EJB开发 501
19.1 J2EE 501
19.1.1 J2EE技术与EJB 502
19.2 EJB 503
19.2.1 EJB概要介绍 503
19.2.2 EJB形成原因 503
19.2.3 EJB的适用范围 504
19.2.4 EJB组成 504
19.2.5 EJB服务器和EJB容器 505
19.2.6 EJB类型 506
19.3 网上模拟ATM
19.3 提款机系统 507
19.3.1 系统介绍 507
19.3.2 用例介绍 508
19.3.3 应用程序功能组成 509
19.3.4 程序组成 510
19.4 模块编写准备工作 511
19.4.1 创建数据库 511
19.4.2 应用服务器的配置 512
19.4.3 数据源配置 514
19.4.4 创建工程和EJB模块 515
19.4.5 使用JBuilder开发
19.4.5 Account实体类 516
19.4.6 创建业务逻辑类 518
19.4.7 Web设计 521
19.4.8 测试程序 524
19.4.9 程序运行 525
19.5 总结 526
第20章 Web Service开发 527
20.1 Web Service简介 527
20.1.1 Web Service概述 527
20.1.2 Web Service相关概念 529
20.1.3 Web Service的特点 530
20.2 在JBuilder中实战Web Service 531
20.2.1 创建并测试Web Service 531
20.2.2 创建Web Service客户端 536
20.2.3 在Tomcat 5.0中部署
20.2.3 Web Service 539
20.2.4 传递复杂数据类型
20.2.4 的Web Service 540
20.2.5 传递大二进制数据
20.2.5 的Web Service 546
20.2.6 基于EJB创建
20.2.6 Web Service 548
20.3 JBuilder提供的
20.3 Web Service工具 549
20.3.1 SOAP报文侦听 549
20.3.2 Web Service搜索器 552
20.4 总结 553
第21章 CORBA开发 554
21.1 CORBA简介 554
21.1.1 什么是CORBA 554
21.1.2 ORB原理 555
21.1.3 CORBA与Java的关系 557
21.1.4 使用CORBA的优点 557
21.2 接口定义语言IDL介绍 558
21.2.1 OMG IDL数据类型 558
21.2.2 IDL设计 559
21.3 使用JDK开发CORBA应用 561
23.3.1 简单的CORBA应用 561
21.3.2 传递复杂数据类型
21.3.2 的CORBA应用 564
21.4 使用VisiBroker开发
21.4 CORBA应用 571
21.4.1 VisiBroker简介 571
21.4.2 基于VisiBroker开发
21.4.2 CORBA应用的步骤 572
21.4.3 基于VisiBroker开发
21.4.3 CORBA应用的实例 572
21.5 总结 574
第22章 无线应用开发 575
22.1 J2ME概述 575
22.1.1 J2ME介绍 575
22.1.2 J2ME总体架构 576
22.1.3 配置概述 576
22.1.4 简表概述 576
22.1.5 J2ME、J2SE与J2EE
22.1.5 之间的比较 577
22.1.6 J2ME在手机应用的前景 578
22.2 实例介绍 578
22.3 创建工程 579
22.3.1 工程的创建 579
22.4 入口主程序开发 580
22.4.1 MIDlet介绍 580
22.4.2 入口程序 581
22.5 RMS管理模块 583
22.5.1 RMS介绍 583
22.5.2 RMS管理 584
22.6 远程通信模块 590
22.6.1 网络编程介绍 590
22.6.2 远程通信模块开发 590
22.7 查询界面模块 593
22.7.1 查询界面设计 593
22.7.2 查询功能开发 594
22.8 结果显示模块 597
22.8.1 结果显示界面设计 597
22.8.2 结果显示功能开发 598
22.9 程序运行结果 599
22.10 应用程序打包及部署 599
22.10.1 打包 599
22.10.2 部署 600
22.11 其他配置 601
22.11.1 程序运行方法配置 601
22.11.2 更换模拟器 602
22.12 总结 603
第五篇
第23章 团队协作及版本控制 606
23.1 团队协作开发概述 606
23.1.1 VCS的作用 606
23.1.2 JBuilder对VCS的支持 607
23.2 安装配置CVS服务器 608
23.2.1 初始化CVS代码库 608
23.2.2 分配代码库访问权限 610
23.3 提交工程和下载工程 611
23.3.1 提交工程到
23.3.1 CVS服务器 611
23.3.2 从CVS服务器下载工程 614
23.4 CVS团队协作常用操作 616
23.4.1 添新文件到代码库 616
23.4.2 提交更改到CVS
23.4.2 服务器(Commit) 617
23.4.3 同步更新到本地
23.4.3 机器(Update) 617
23.4.4 合并更改(Merge) 617
23.4.5 删除文件 621
23.4.6 版本回溯和比较 621
23.4.7 批量提交和更新 622
23.5 用StarTeam进行团队开发 624
23.5.1 StarTeam概述 624
23.5.2 安装StarTeam服务器 625
23.5.3 启动StarTeam服务器 626
23.5.4 添加新用户 626
23.5.5 提交工程到StarTeam
23.5.5 服务器 628
23.5.6 从StarTeam服务器
23.5.6 下载工程 631
23.5.7 StarTeam的操作
23.5.7 界面介绍 632
23.6 变化监视的标识设置 633
23.7 总结 634
第24章 UML浏览器 635
24.1 Java和UML 635
24.2 JBuilder和UML 636
24.2.1 有限包依赖图 636
24.2.2 组合类图 637
24.3 JBuilder UML图 639
24.4 浏览UML图 641
24.4.1 UML浏览器 642
24.4.2 浏览包图 643
24.4.3 浏览类图 643
24.4.4 浏览内部类图 643
24.5 UML和结构窗格 644
24.6 UML相关配置 644
24.6.1 工程属性中相关配置 644
24.6.2 开发环境相关配置 646
24.7 总结 646
第25章 单元测试 647
25.1 自动测试代码的重要性 647
25.2 JUnit测试框架 648
25.2.1 简单的框架 648
25.2.2 测试固件(Fixture) 649
25.2.3 测试用例(TestCase) 650
25.2.4 测试套件(TestSuite) 650
25.2.5 测试运行器 651
25.3 业务类介绍 652
25.3.1 分段函数类 652
25.3.2 字符串处理类 653
25.4 创建测试用例 654
25.5 用套件捆绑运行多个测试用例 658
25.6 创建测试固件 661
25.6.1 JDBC测试固件 661
25.6.2 比较测试固件 667
25.7 测试运行配置 670
25.8 总结 672
第26章 创建Javadoc文档 674
26.1 什么是Javadoc文档 674
26.2 Javadoc标签介绍 677
26.3 编写Javadoc注释 682
26.3.1 Javadoc对话框 682
26.3.2 使用JavadocInsight 683
26.3.3 自定义的Javadoc标签 684
26.3.4 使用代码模板 685
26.3.5 Javadoc注释冲突 687
26.3.6 todo标签 688
26.4 创建Javadoc文档 689
26.5 总结 693
第27章 代码重构 694
27.1 认识重构 694
27.1.1 为什么要重构 694
27.1.2 何时着手重构 695
27.2 JBuilder对重构的支持 696
27.2.1 提供了哪些重构
27.2.1 的功能 697
27.2.2 重构对话框 697
27.2.3 重构一般操作步骤 698
27.3 重构之事前侦察 699
27.3.1 查看定义 699
27.3.2 查看引用 699
27.3.3 查看覆盖方法 700
27.4 重命名 700
27.4.1 值域及变量重命名 701
27.4.2 属性重命名 701
27.4.3 方法重命名 702
27.4.4 方法参数更改 703
27.4.5 类重命名 705
27.4.6 包重命名 705
27.5 类的内部提炼 706
27.5.1 提炼方法 706
27.5.2 内联方法 707
27.5.3 提炼变量 707
27.5.4 内联变量 708
27.6 类继承体系间的搬迁 709
27.6.1 搬迁方法 709
27.6.2 迁值域 710
27.6.3 提炼超类 711
27.6.4 提炼接口 712
27.7 无缝升级到JDK 5.0 713
27.7.1 使工程基于JDK 5.0 713
27.7.2 优化循环 713
27.7.3 自动装/拆箱 714
27.7.4 非泛型转泛型 715
27.8 杂项重构 716
27.8.1 优化import 716
27.8.2 自动添加异常捕捉 717
27.8.3 部署描述文件 719
27.8.4 EJB 720
27.8.5 代理 720
27.9 分布式重构 722
27.10 总结 725
第六篇
附录A 各种数据库连接关键代码 728
附录B 使用第三方工具开发XML 730
附录C Javadoc命令使用说明 733
第一篇
第1章 JBuilder 2005概述 2
1.1 功能介绍 2
1.2 新增特性 4
1.3 程序安装 5
1.3.1 不同版本的差异 5
1.3.2 硬件要求 6
1.3.3 安装步骤 7
1.4 理解安装目录 11
1.5 使用帮助 12
1.5.1 如何获取帮助 12
1.5.2 使用Help Viewer 13
1.6 常见问题解决之道 14
1.6.1 光标错位 14
1.6.2 汉字乱码 17
1.7 总结 17
第2章 Java语言基础 18
2.1 Java简介 18
2.1.1 Java发展史 18
2.1.2 Java的特点 19
2.1.3 关于Java的FAQ 19
2.2 Java语言基础 20
2.2.1 注释 20
2.2.2 Java中的关键字 21
2.2.3 基本数据类型 22
2.2.4 基本数据类型的转换 23
2.2.5 字面值 24
2.2.6 数组 25
2.2.7 运算符和表达式 27
2.3 流程控制 32
2.3.1 选择流程控制语句 33
2.3.2 循环语句及跳转 34
2.4 类和对象 37
2.4.1 类的一般结构 38
2.4.2 类的包 39
2.4.3 类的值域和方法 40
2.4.4 方法的重载和覆盖 42
2.4.5 类的构造函数 43
2.4.6 类的继承 44
2.4.7 类和接口 46
2.5 异常处理 47
2.5.1 Java中的异常结构 48
2.5.2 发生异常时的流程控制 49
2.5.3 抛出异常 50
2.6 JDK 5.0快速进阶 51
2.6.1 简易开发 51
2.6.2 提高扩展性和性能 51
2.6.3 监视和管理 52
2.6.4 新的JVM整形API 52
2.6.5 改进诊断能力 53
2.6.6 元数据Metadata 54
2.6.7 泛型 55
2.6.8 自动装/拆箱 56
2.6.9 增强型for循环 56
2.6.10 枚举化的类型 57
2.6.11 静态引入 57
2.6.12 格式化的输出 57
2.6.13 格式化的输入 57
2.6.14 不定参数 58
2.6.15 并行工具 58
2.6.16 其他的一些新特性 58
2.7 总结 59
第3章 JBuilder 2005集成开发环境 60
3.1 集成开发环境 60
3.1.1 菜单条 61
3.1.2 工具条 62
3.1.3 工程窗格 63
3.1.4 结构窗格 65
3.1.5 内容窗格 66
3.1.6 信息窗格 67
3.1.7 状态条 68
3.1.8 调整工作区效果 69
3.2 工程及工程组 70
3.2.1 何为工程 70
3.2.2 用工程向导创建一个工程 71
3.2.3 工程属性 73
3.2.4 工程组 74
3.3 维护类库 76
3.3.1 类库的结构 76
3.3.2 维护JBuilder类库 77
3.3.3 维护工程扩展类库 81
3.4 设置JDK 82
3.4.1 配置一个新的JDK 82
3.4.2 在工程中使用JDK 5.0 84
3.5 小结 85
第4章 编辑器——高效代码
第4章 开发之利器 87
4.1 编辑器界面组成 87
4.2 编辑器的一般设置 88
4.2.1 设置编辑器字体 88
4.2.2 调整编辑器的显示效果 89
4.2.3 动作触发设置 89
4.3 快捷键 91
4.3.1 快捷键模式 91
4.3.2 配置快捷键 91
4.3.3 常用快捷键 93
4.4 代码选择 96
4.4.1 一般性选择 96
4.4.2 块选择 96
4.5 智能拷贝 97
4.6 查找 98
4.7 用书签进行快速导航和定位 100
4.7.1 数字书签 100
4.7.2 文本书签 100
4.7.3 Todo标识 101
4.8 CodeInsight 101
4.9 代码模板 103
4.9.1 常用代码模板 103
4.9.2 使用代码模板 105
4.9.3 代码模板的设置 105
4.10 同步代码编辑 107
4.11 ErrorInsight 108
4.12 辅助显示支持 109
4.12.1 ScopeInsight 109
4.12.2 代码折叠 110
4.13 代码排版格式化 111
4.13.1 排版格式化的内容 111
4.13.2 设置和调用 112
4.14 总结 113
第5章 代码审查 114
5.1 何谓代码审查 114
5.2 使用代码审查 114
5.3 代码风格审查 116
5.3.1 “switch”必须带一个
5.3.1 default语句 116
5.3.2 应通过类名引用静态成员 116
5.3.3 避免复杂晦涩的代码 117
5.3.4 尽量使用赋值运算符 118
5.3.5 其他代码风格的审查 119
5.4 声明审查 120
5.4.1 避免命名覆盖 120
5.4.2 使用适合的修饰符 121
5.4.3 有关子类覆盖的审查 121
5.4.4 代码排列及先后顺序 121
5.5 命名风格 122
5.5.1 取消不良命名习惯 122
5.5.2 建立和国际接轨的包名 122
5.5.3 避免过于简单的变量名 122
5.6 潜在错误审查 123
5.6.1 聚焦switch 123
5.6.2 避免浮点值等值逻辑判断 125
5.6.3 用括号清晰化
5.6.3 复杂的表示式 126
5.6.4 字符串比较 126
5.7 各种画蛇添足的审查 126
5.7.1 将布尔变量和
5.7.1 布尔值比较 126
5.7.2 无用的成员 127
5.7.3 多余的接口修饰符 127
5.7.4 不必要的强制类型转换 128
5.7.5 多余的import包引入 128
5.8 其他 128
5.8.1 无作为的表达式 128
5.8.2 流程控制中存在
5.8.2 不可至的语句 129
5.8.3 无用的流程标签 130
5.9 总结 130
第6章 编译、运行、调试、
第6章 优化及打包 131
6.1 编译程序 131
6.1.1 关于代码编译 131
6.1.2 编译操作及编译器 131
6.1.3 编译器的设置 133
6.1.4 编译的错误信息 134
6.2 运行程序 135
6.2.1 邮件收发程序 135
6.2.2 运行程序文件 138
6.2.3 设置运行配置信息 139
6.3 调试程序 142
6.3.1 程序的错误类型 142
6.3.2 调试界面 142
6.3.3 调试Sender.java的
6.3.3 运行期错误 144
6.3.4 调试Sender.java的
6.3.4 逻辑错误 146
6.3.5 查看程序加载的类
6.3.5 及类的静态变量 148
6.3.6 多线程调试 149
6.4 Optimizeit代码优化工具 151
6.4.1 Profiler 152
6.4.2 Thread Debugger 154
6.4.3 Code Coverage 156
6.5 打包输出 157
6.5.1 何谓打包 157
6.5.2 混淆编译打包 158
6.5.3 将MailBox打包输出 159
6.5.4 运行打包档案程序文件 162
6.6 总结 163
第二篇
第7章 用户界面应用程序开发 166
7.1 用户界面设计器 166
7.2 布局管理器 167
7.2.1 为何使用布局管理器 167
7.2.2 经典布局管理器 168
7.2.3 JBuilder提供的
7.2.3 布局管理器 173
7.3 用户界面组件 174
7.4 事件处理模型 177
7.4.1 事件类 177
7.4.2 事件监听器 177
7.4.3 显式事件使能 181
7.4.4 适配器 182
7.5 文本编辑器 183
7.5.1 创建工程和主界面 183
7.5.2 加入一个多行文本框组件 186
7.5.3 创建菜单 188
7.5.4 加入一个FontChooser
7.5.4 对话框 190
7.5.5 使用FontChooser设置
7.5.5 多行文本框中的字体 192
7.5.6 添加菜单事件调用
7.5.6 JColorChooser 192
7.5.7 添加菜单事件清除多行
7.5.7 文本框的内容 193
7.5.8 添加文件选择对话框 193
7.5.9 添加从文件中读取
7.5.9 内容的方法 194
7.5.10 添加保存文件菜单
7.5.10 处理事件 195
7.5.11 添加代码监视文件
7.5.11 内容的变化 197
7.5.12 让工具栏工作起来 198
7.5.13 为多行文本框组件
7.5.13 添加事件处理 200
7.5.14 为多行文本框添加
7.5.14 上下文菜单 200
7.5.15 在窗口状态条中显示
7.5.15 文件及其状态 201
7.6 总结 203
第8章 JavaBean开发 204
8.1 什么是Bean 204
8.2 Bean的编写过程 204
8.3 Bean属性和事件 206
8.3.1 Bean的属性 206
8.3.2 属性编辑器 207
8.3.3 属性定制器 208
8.3.4 Bean的事件 209
8.4 整数值范围Bean功能介绍 209
8.5 IntValueBean编写 210
8.5.1 创建IntValueBean 210
8.5.2 序列化组件 212
8.5.3 添加关联属性 212
8.5.4 成为属性变化的监听器 215
8.5.5 添加限制属性 218
8.5.6 添加得到或失去焦点事件 220
8.6 建立RangeBean 223
8.6.1 创建RangeBean 223
8.6.2 代理设置IntValueBean
8.6.2 的bgColor属性 225
8.6.3 代理设置IntValueBean
8.6.3 的intValue属性 226
8.6.4 成为限制属性否决监听器 226
8.7 BeanInfo 229
8.8 属性编辑器 231
8.8.1 生成属性编辑器 232
8.8.2 在BeanInfo中声明
8.8.2 属性编辑器 234
8.9 Bean定制器 236
8.9.1 创建Bean的定制器 236
8.9.2 在BeanInfo中说明
8.9.2 Bean的定制器 238
8.10 打包输出 239
8.10.1 为Bean设定图标 239
8.10.2 查看Bean的各部分内容 240
8.10.3 打成JAR包 240
8.11 添加到组件面板 241
8.12 总结 243
第9章 JDataStore数据库开发 244
9.1 DataStore简介 244
9.1.1 JDataStore的特性 244
9.1.2 JDataStore的配置 244
9.2 用JDataStore浏览器管理数据库 246
9.2.1 启动JDataStore 246
9.2.2 创建JDataStore文件 246
9.2.3 打开JDataStore文件 247
9.3 如何创建表及索引 247
9.3.1 创建表 247
9.3.2 创建索引 248
9.4 JDataStore的安全性管理 248
9.4.1 管理用户 248
9.4.2 修改密码 248
9.4.3 数据库加密 249
9.5 DataStore数据库简单应用 249
9.6 数据库图形用户界面程序 251
9.7 JDataStore的数据导入导出 255
9.8 JDataStore在非结构化
9.8 存储方面的应用 259
9.9 发布基于JDataStore
9.9 的应用程序 264
9.10 总结 264
第10章 DataExpress和
第10章 dbSwing数据库开发 265
10.1 DataExpress简介 265
10.1.1 DataExpress的主要组件 265
10.1.2 DataExpress组件
10.1.2 说明及其属性 266
10.1.3 DataExpress的体系结构 268
10.1.4 模块化DataExpress
10.1.4 体系结构的优点 269
10.2 使用DataExpress和dbSwing
10.2 组件编写数据库应用程序 269
10.2.1 访问文本数据 269
10.2.2 数据库图形用户界面程序 274
10.2.3 允许“脱机”修改
10.2.3 的数据集 278
10.2.4 数据集二次处理 281
10.2.5 使用存储过程
10.2.5 返回数据集 285
10.2.6 序列化数据集 288
10.2.7 触发器 292
10.3 总结 294
第11章 Applet开发 295
11.1 Applet概述 295
11.2 关于浏览器 296
11.3 指法练习Applet游戏介绍 298
11.3.1 界面及功能 298
11.3.2 程序组成 298
11.4 利用向导生成Applet 301
11.5 设计Applet界面 305
11.6 游戏的统计数据 306
11.7 字母下落线程 307
11.8 添加击中音效 309
11.9 字母下落线程的产生器线程 310
11.10 响应用户按键事件 311
11.11 控制游戏 312
11.11.1 为按钮添加图标 312
11.11.2 通过按钮事件
11.11.2 控制游戏 313
11.11.3 保存游戏统计数据 314
11.11.4 关注Applet生命周期 315
11.12 打包并进行数字签名 317
11.12.1 数字签名技术 317
11.12.2 数字证书的生成 318
11.12.3 打包 319
11.12.4 在文件中引用
11.12.4 Applet包文件 321
11.13 使用插件下载JRE 322
11.14 总结 324
第三篇
第12章 Web应用程序开发基础 326
12.1 Web应用程序概述 326
12.2 Web开发的各项技术 327
12.3 Web开发的过程 329
12.4 Web模块和WAR文件 330
12.4.1 什么是Web模块 330
12.4.2 什么是WAR文件 330
12.4.3 如何用JBuilder向导
12.4.3 创建Web模块 331
12.4.4 Web模块的
12.4.4 目录结构 333
12.5 更改Web模块设置 335
12.5.1 Module设置页 335
12.5.2 Web设置页 336
12.5.3 Clean设置页 336
12.5.4 Build设置页 337
12.5.5 Content设置页 338
12.6 配置Web应用服务器 340
12.7 结束 341
第13章 JSP开发 342
13.1 JSP开发必备 342
13.1.1 JSP概述 342
13.1.2 JSP标签 343
13.1.3 JSP隐含对象 344
13.1.4 JSP和对应的Servlet 345
13.2 用户登录Web应用
13.2 程序功能介绍 346
13.3 模块编写准备工作 348
13.3.1 创建数据库表 348
13.3.2 创建工程及Web模块 349
13.3.3 编写获取数据库连接类 349
13.4 登录页面login.jsp 351
13.4.1 创建login.jsp 351
13.4.2 将用户列表改为动态 353
13.5 切换控制switch.jsp 355
13.5.1 编写User.java 356
13.5.2 编写页面程序 357
13.6 错误处理页面error.jsp 361
13.7 登录失败fail.jsp 362
13.8 欢迎页面welcome.jsp 363
13.8.1 将第三方标签库
13.8.1 配置到JBuilder中 363
13.8.2 创建欢迎JSP页面 365
13.9 quit.jsp退出处理页面 368
13.10 用户登录和退出日志 368
13.11 程序部署 371
13.12 总结 373
第14章 Servlet开发 374
14.1 Servlet开发必备 374
14.1.1 Servlet工作方式 374
14.1.2 Servlet的特性
14.1.2 及应用场合 375
14.2 应用程序改造和功能新增 376
14.2.1 原登录模块的不足 376
14.2.2 新增系统日志模块 377
14.2.3 事前准备 377
14.3 自动启动Servlet 378
14.4 过滤器的Servlet 383
14.5 监听器的Servlet 385
14.6 文件下载的Servlet 387
14.6.1 通过向导创建
14.6.1 ExcelFileServlet 387
14.6.2 下载日志文件代码 389
14.6.3 改造welcome.jsp 391
14.7 总结 391
第15章 Struts开发 392
15.1 Struts概述 392
15.11 Struts技术框架 392
15.1.2 Struts 1.1新增功能 395
15.2 应用程序改造和升级 397
15.2.1 用Action控制器
15.2.1 替换switch.jsp 397
15.2.2 新增一个图书
15.2.2 管理模块 397
15.2.3 事前准备 398
15.3 改造原登录模块 398
15.3.1 用ActionForm截取
15.3.1 登录表单数据 398
15.3.2 用Action代替switch.jsp
15.3.2 的控制转换功能 401
15.4 新增图书记录 407
15.4.1 新增一个Struts
15.4.1 配置文件 407
15.4.2 图书ActionForm 409
15.4.3 新增图书JSP页面 411
15.4.4 创建BookInsertAction 415
15.5 总结 418
第16章 JSF开发 419
16.1 JSF快速学习 419
16.1.1 JSF简介 419
16.1.2 JSF原理 420
16.2 创建基于JSF框架
16.2 的Web应用 421
16.2.1 开始使用JSF前的准备 421
16.2.2 一个简单的JSF应用 422
16.3 在JBuilder中实战JSF 426
16.3.1 JBuilder提供
16.3.1 的JSF工具 426
16.3.2 模拟账户查询程序 429
16.3.3 字体编辑程序 435
16.4 总结 441
第17章 Cocoon开发 442
17.1 Cocoon简介 442
17.1.1 Web发布框架 442
17.1.2 什么是Cocoon 443
17.1.3 Cocoon的工作原理 443
17.1.4 XSP的工作原理 444
17.2 在JBuilder中实战Cocoon 446
17.2.1 创建Cocoon模块 446
17.2.2 一个最简单的XSP 448
17.2.3 利用ESQL从数据库
17.2.3 中读取数据 450
17.2.4 在XSP中发送电子邮件 456
17.3 总结 457
第四篇
第18章 XML开发 460
18.1 XML简介 460
18.1.1 XML文档规则 460
18.1.2 常用概念 461
18.1.3 第一个XML文档 462
18.1.4 XML结构化定义简介 463
18.1.5 XML转换简介 464
18.2 在JBuilder中实战XML 469
18.2.1 基于DTD生成XML 469
18.2.2 转换XML文档 471
18.2.3 XTable和XQuery组件 475
18.2.4 XMLDBMSQuery和
18.2.4 XMLDBMSTable组件 479
18.2.5 基于DTD实现数据绑定 483
18.3 XML解析 489
18.3.1 文档对象模型(DOM) 489
18.3.2 用于XML的简单
18.3.2 API(SAX) 492
18.3.3 使用SAX同步解析
18.3.3 XML数据流 496
18.3.4 选择合适的API 500
18.4 总结 500
第19章 EJB开发 501
19.1 J2EE 501
19.1.1 J2EE技术与EJB 502
19.2 EJB 503
19.2.1 EJB概要介绍 503
19.2.2 EJB形成原因 503
19.2.3 EJB的适用范围 504
19.2.4 EJB组成 504
19.2.5 EJB服务器和EJB容器 505
19.2.6 EJB类型 506
19.3 网上模拟ATM
19.3 提款机系统 507
19.3.1 系统介绍 507
19.3.2 用例介绍 508
19.3.3 应用程序功能组成 509
19.3.4 程序组成 510
19.4 模块编写准备工作 511
19.4.1 创建数据库 511
19.4.2 应用服务器的配置 512
19.4.3 数据源配置 514
19.4.4 创建工程和EJB模块 515
19.4.5 使用JBuilder开发
19.4.5 Account实体类 516
19.4.6 创建业务逻辑类 518
19.4.7 Web设计 521
19.4.8 测试程序 524
19.4.9 程序运行 525
19.5 总结 526
第20章 Web Service开发 527
20.1 Web Service简介 527
20.1.1 Web Service概述 527
20.1.2 Web Service相关概念 529
20.1.3 Web Service的特点 530
20.2 在JBuilder中实战Web Service 531
20.2.1 创建并测试Web Service 531
20.2.2 创建Web Service客户端 536
20.2.3 在Tomcat 5.0中部署
20.2.3 Web Service 539
20.2.4 传递复杂数据类型
20.2.4 的Web Service 540
20.2.5 传递大二进制数据
20.2.5 的Web Service 546
20.2.6 基于EJB创建
20.2.6 Web Service 548
20.3 JBuilder提供的
20.3 Web Service工具 549
20.3.1 SOAP报文侦听 549
20.3.2 Web Service搜索器 552
20.4 总结 553
第21章 CORBA开发 554
21.1 CORBA简介 554
21.1.1 什么是CORBA 554
21.1.2 ORB原理 555
21.1.3 CORBA与Java的关系 557
21.1.4 使用CORBA的优点 557
21.2 接口定义语言IDL介绍 558
21.2.1 OMG IDL数据类型 558
21.2.2 IDL设计 559
21.3 使用JDK开发CORBA应用 561
23.3.1 简单的CORBA应用 561
21.3.2 传递复杂数据类型
21.3.2 的CORBA应用 564
21.4 使用VisiBroker开发
21.4 CORBA应用 571
21.4.1 VisiBroker简介 571
21.4.2 基于VisiBroker开发
21.4.2 CORBA应用的步骤 572
21.4.3 基于VisiBroker开发
21.4.3 CORBA应用的实例 572
21.5 总结 574
第22章 无线应用开发 575
22.1 J2ME概述 575
22.1.1 J2ME介绍 575
22.1.2 J2ME总体架构 576
22.1.3 配置概述 576
22.1.4 简表概述 576
22.1.5 J2ME、J2SE与J2EE
22.1.5 之间的比较 577
22.1.6 J2ME在手机应用的前景 578
22.2 实例介绍 578
22.3 创建工程 579
22.3.1 工程的创建 579
22.4 入口主程序开发 580
22.4.1 MIDlet介绍 580
22.4.2 入口程序 581
22.5 RMS管理模块 583
22.5.1 RMS介绍 583
22.5.2 RMS管理 584
22.6 远程通信模块 590
22.6.1 网络编程介绍 590
22.6.2 远程通信模块开发 590
22.7 查询界面模块 593
22.7.1 查询界面设计 593
22.7.2 查询功能开发 594
22.8 结果显示模块 597
22.8.1 结果显示界面设计 597
22.8.2 结果显示功能开发 598
22.9 程序运行结果 599
22.10 应用程序打包及部署 599
22.10.1 打包 599
22.10.2 部署 600
22.11 其他配置 601
22.11.1 程序运行方法配置 601
22.11.2 更换模拟器 602
22.12 总结 603
第五篇
第23章 团队协作及版本控制 606
23.1 团队协作开发概述 606
23.1.1 VCS的作用 606
23.1.2 JBuilder对VCS的支持 607
23.2 安装配置CVS服务器 608
23.2.1 初始化CVS代码库 608
23.2.2 分配代码库访问权限 610
23.3 提交工程和下载工程 611
23.3.1 提交工程到
23.3.1 CVS服务器 611
23.3.2 从CVS服务器下载工程 614
23.4 CVS团队协作常用操作 616
23.4.1 添新文件到代码库 616
23.4.2 提交更改到CVS
23.4.2 服务器(Commit) 617
23.4.3 同步更新到本地
23.4.3 机器(Update) 617
23.4.4 合并更改(Merge) 617
23.4.5 删除文件 621
23.4.6 版本回溯和比较 621
23.4.7 批量提交和更新 622
23.5 用StarTeam进行团队开发 624
23.5.1 StarTeam概述 624
23.5.2 安装StarTeam服务器 625
23.5.3 启动StarTeam服务器 626
23.5.4 添加新用户 626
23.5.5 提交工程到StarTeam
23.5.5 服务器 628
23.5.6 从StarTeam服务器
23.5.6 下载工程 631
23.5.7 StarTeam的操作
23.5.7 界面介绍 632
23.6 变化监视的标识设置 633
23.7 总结 634
第24章 UML浏览器 635
24.1 Java和UML 635
24.2 JBuilder和UML 636
24.2.1 有限包依赖图 636
24.2.2 组合类图 637
24.3 JBuilder UML图 639
24.4 浏览UML图 641
24.4.1 UML浏览器 642
24.4.2 浏览包图 643
24.4.3 浏览类图 643
24.4.4 浏览内部类图 643
24.5 UML和结构窗格 644
24.6 UML相关配置 644
24.6.1 工程属性中相关配置 644
24.6.2 开发环境相关配置 646
24.7 总结 646
第25章 单元测试 647
25.1 自动测试代码的重要性 647
25.2 JUnit测试框架 648
25.2.1 简单的框架 648
25.2.2 测试固件(Fixture) 649
25.2.3 测试用例(TestCase) 650
25.2.4 测试套件(TestSuite) 650
25.2.5 测试运行器 651
25.3 业务类介绍 652
25.3.1 分段函数类 652
25.3.2 字符串处理类 653
25.4 创建测试用例 654
25.5 用套件捆绑运行多个测试用例 658
25.6 创建测试固件 661
25.6.1 JDBC测试固件 661
25.6.2 比较测试固件 667
25.7 测试运行配置 670
25.8 总结 672
第26章 创建Javadoc文档 674
26.1 什么是Javadoc文档 674
26.2 Javadoc标签介绍 677
26.3 编写Javadoc注释 682
26.3.1 Javadoc对话框 682
26.3.2 使用JavadocInsight 683
26.3.3 自定义的Javadoc标签 684
26.3.4 使用代码模板 685
26.3.5 Javadoc注释冲突 687
26.3.6 todo标签 688
26.4 创建Javadoc文档 689
26.5 总结 693
第27章 代码重构 694
27.1 认识重构 694
27.1.1 为什么要重构 694
27.1.2 何时着手重构 695
27.2 JBuilder对重构的支持 696
27.2.1 提供了哪些重构
27.2.1 的功能 697
27.2.2 重构对话框 697
27.2.3 重构一般操作步骤 698
27.3 重构之事前侦察 699
27.3.1 查看定义 699
27.3.2 查看引用 699
27.3.3 查看覆盖方法 700
27.4 重命名 700
27.4.1 值域及变量重命名 701
27.4.2 属性重命名 701
27.4.3 方法重命名 702
27.4.4 方法参数更改 703
27.4.5 类重命名 705
27.4.6 包重命名 705
27.5 类的内部提炼 706
27.5.1 提炼方法 706
27.5.2 内联方法 707
27.5.3 提炼变量 707
27.5.4 内联变量 708
27.6 类继承体系间的搬迁 709
27.6.1 搬迁方法 709
27.6.2 迁值域 710
27.6.3 提炼超类 711
27.6.4 提炼接口 712
27.7 无缝升级到JDK 5.0 713
27.7.1 使工程基于JDK 5.0 713
27.7.2 优化循环 713
27.7.3 自动装/拆箱 714
27.7.4 非泛型转泛型 715
27.8 杂项重构 716
27.8.1 优化import 716
27.8.2 自动添加异常捕捉 717
27.8.3 部署描述文件 719
27.8.4 EJB 720
27.8.5 代理 720
27.9 分布式重构 722
27.10 总结 725
第六篇
附录A 各种数据库连接关键代码 728
附录B 使用第三方工具开发XML 730
附录C Javadoc命令使用说明 733
猜您喜欢