目录 2
第1篇 起步篇 2
第1章 Eclipse简介 2
1.1 Eclipse的历史 2
1.2 Eclipse的体系结构 2
1.3 优秀的图形API:SWT/JFace 3
1.4 开放式、可扩展的IDE 4
1.5 全中文化的帮助文件 4
1.6 Eclipse是开放源代码的 5
1.7 本章小结 5
第2章 安装Eclipse及多国语言包 6
2.1 安装JDK 6
2.2 安装Eclipse 7
2.3 Eclipse多国语言包的安装 8
2.4 本章小结 10
第3章 安装SWT Designer 11
3.1 下载 11
3.2 安装 11
3.3 注册激活 12
3.4 其他常用插件 14
3.5 本章小结 15
第4章 Eclipse的集成开发环境 16
4.1 Eclipse界面简介 16
4.2 创建Java项目并运行 17
4.3 自定义注释及代码格式化 20
4.3.1 自定义注释 20
4.3.2 代码格式化 21
4.3.3 实践建议 21
4.4 使用Eclipse的重构功能 22
4.5.1 任务标记的设定 23
4.5 任务标记 23
4.5.2 过滤任务标记 24
4.6 在编程时随意查看JDK、Eclipse源代码 25
4.6.1 查看JDK源代码 25
4.6.2 查看Eclipse的源代码 25
4.7 在代码中搜索 28
4.8 打开类型层次结构 28
4.9 调试器的使用 29
4.10 常用快捷键 30
4.11 本章小结 31
第5章 Eclipse中CVS的使用 32
5.1 CVS简介 32
5.2 CVS服务器端的安装与配置 32
5.3.1 配置Eclipse的客户端来连接上CVS服务器 34
5.3 CVS客户端的配置 34
5.3.2 将项目提交到CVS服务器上 35
5.3.3 CVS服务器上的项目导入到Eclipse中 36
5.4 文件提交与更新的方法 37
5.4.1 CVS和VSS的不同之处 37
5.4.2 文件的提交和更新 38
5.4.3 解决文件提交的冲突 39
5.4.4 如何忽略掉不想提交的文件 40
5.4.5 实践建议 41
5.5 在CVS上为软件打包一个版本 42
5.6 将项目替换成CVS上的其他版本 42
5.7 修改旧版本的BUG 43
5.8 本章小结 44
第6章 SWT概述 46
6.1 SWT简介 46
第2篇 SWT/JFace篇 46
6.2 SWT中的包 47
6.3 用SWT Designer写一个Hello World 47
6.3.1 使用向导建立一个SWT/JFace Java项目 48
6.3.2 导入SWT的原生库 49
6.3.3 新建一个SWT类文件 50
6.3.4 在主窗口加入一个文本框组件 51
6.3.5 运行Hello World.java 52
6.4 关于SWT/JFace例程的说明 53
6.5 实践建议 54
6.6 本章小结 54
7.1.1 匿名内部类写法 55
7.1.2 命名内部类写法 55
7.1 事件的4种写法 55
第7章 SWT/JFace的事件模型 55
7.1.3 外部类写法 56
7.1.4 实现监听接口的写法 56
7.1.5 总结 57
7.2 常用事件介绍 57
7.3 在事件代码中如何访问类中的变量 58
7.3.1 访问类中变量的3种方法 58
7.3.2 Java中变量的称法和说明 59
7.4 本章小结 60
第8章 SWT常用组件 61
8.1 按钮、复选框、单选框(Button类) 61
8.1.1 一个Button类的实例 61
8.1.2 Button类的式样表 62
8.1.3 让Button应用多个式样 62
8.2 组件的常用方法 62
8.3 标签(Label类) 64
8.4 文本框(Text类) 65
8.5 下拉框(Combo类) 67
8.6 列表框(List类) 70
8.7 本章小结 71
第9章 容器类 72
9.1 面板(Composite类) 72
9.2 分组框(Group类) 73
9.3 选项卡(TabFolder类和TabItem类) 73
9.4 分割窗(SashForm类) 75
9.5 带滚动条的面板(ScrolledComposite类) 77
9.6 本章小结 78
第10章 布局管理器 79
10.1 布局管理器简介 79
10.2.2 FillLayout的实例2 80
10.2.1 FillLayout的实例1 80
10.2 充满式(FillLayout类) 80
10.2.3 使用SWT.VERTICAL式样更改排列方式 81
10.3 行列式(RowLayout类) 81
10.3.1 RowLayout的基本实例 81
10.3.2 使用rowLayout.wrap控制自动折行(默认值true) 82
10.3.3 使用SWT.VERTICAL式样控制排列方式 83
10.3.4 使用rowLayout.pack控制组件大小(默认值true) 83
10.3.5 使用rowLayout.justify控制空间伸展(默认值false) 83
10.3.6 使用RowData更改按钮的外观 84
10.4 网格式(GridLayout类) 84
10.4.1 GridLayout类的基本实例 84
10.4.2 使用gridLayout.numColumns设置列数(默认值1) 85
10.4.3 使用makeColumnsEqualWidth把组件等距分开(默认值false) 86
10.4.4 使用MarginWidth、MarginHeight、HorizontalSpacing、VerticalSpacing属性 86
10.4.5 使用GridData控制复杂布局 86
10.5 堆栈式(StackLayout类) 91
10.6 表格式(FormLayout类) 93
10.6.1 使用marginWidth、marginHeight设置边距 93
10.6.2 使用FormData的构造函数 94
10.6.3 FormAttachment类的用法 94
10.7 布局的综合实例 97
10.8 本章小结 102
第11章 其他SWT组件 104
11.1 工具栏(ToolBar类、ToolItem类、ViewForm类) 104
11.2 动态工具栏(CoolBar类、CoolItem类) 106
11.3 菜单(Menu类,MenuItem类) 108
11.4 滑动条(Slider)、刻度条(Scale)、进度条(ProgressBar) 111
11.5 画布(Canvas类) 112
11.6 表格(Table类) 114
11.7 树(Tree类) 116
11.8 表格型树(TableTree类) 117
11.9 本章小结 119
第12章 图像 120
12.1 图像(Image类) 120
12.2 图像(Image类)存在的问题 121
12.3 图像描述符(ImageDescriptor类) 121
12.4 图像注册表(ImageRegistry类) 122
12.5 本章小结 123
第13章 SWT的线程 124
13.1 SWT线程简介 124
13.2 一个SWT线程的实例 125
13.3 对11.4节进度条实例的改进 130
13.4 本章小结 131
第14章 表格(TableViewer类) 132
14.1 概述 132
14.2.2 创建数据表的实体类 133
14.2 让数据在TableViewer中显示出来 133
14.2.1 实例的数据模型介绍 133
14.2.3 数据的生成 134
14.2.4 数据在表格中的显示 136
14.3 TableViewer响应鼠标事件 139
14.4 加上右键菜单(Action类、ActionGroup类、MenuManager类) 141
14.4.1 Action类、ActionGroup类、MenuManager类介绍 141
14.4.2 创建Action和ActionGroup 141
14.4.3 在主程序中使用ActionGroup、MenuManager 143
14.5 TableViewer排序(ViewerSorter类) 143
14.5.1 编写排序器 144
14.5.2 生成排序器对象 145
14.5.3 为表格的列添加监听器及事件处理代码 146
14.6 加上工具栏(ToolBarManager类) 146
14.6.1 创建按钮的Action及将Action填充进工具栏的方法 147
14.6.2 布局调整 150
14.7 创建一个带复选框的TableViewer(CheckboxTableViewer类) 151
14.7.1 修改界面程序将表格变为带复选框的式样 151
14.7.2 修改MyActionGroup类 152
14.8 单击修改表格单元格值(CellEditor类、ICellModifier接口) 154
14.8.1 创建一个字符串数组 154
14.8.2 修改主程序的open()方法 154
14.8.3 创建MyCellModifier类 155
14.9 其他使用技巧 157
14.9.1 表格记录的过滤 157
14.9.2 控制表格的当前选择行 158
14.9.3 给表格的单元格设置背景色 158
14.9.4 加快TableItem和记录之间的查找速度 159
14.10 本章小结 159
15.2.1 建立国家实体和城市实体 160
15.2 前期准备:实例所用数据模型说明 160
第15章 树(TreeViewer类)和列表(ListViewer类) 160
15.1 概述 160
15.2.2 建立树结点的接口类 161
15.2.3 让国家、城市、人三个实体类实现此接口 162
15.3 让数据在树中显示出来 163
15.3.1 树的数据结构的创建 163
15.3.2 标签器和内容器的使用 165
15.3.3 标签器(实现ILabelProvider接口) 165
15.3.4 内容器(实现ITreeContentProvider接口) 166
15.4 给树加上右键菜单及取得结点的值 169
15.5 树结点的展开、收缩、新增、删除、修改 171
15.6 ListViewer类 175
15.6.1 ListViewer简介 175
15.6.2 ListViewer的实例 175
15.7 本章小结 176
15.6.3 ListViewer常用方法 176
第16章 对话框 177
16.1 对话框(Dialog类) 177
16.1.1 对话框简介 177
16.1.2 信息提示框(MessageDialog类) 178
16.1.3 输入值对话框(InputDialog类) 179
16.1.4 自定义对话框(Dialog类) 181
16.1.5 对话框的设置与取值 185
16.1.6 带提示栏的对话框(TitleAreaDialog类) 186
16.2 向导式对话框(WizardDialog类) 187
16.2.1 向导式对话框简介 187
16.2.2 向导式对话框实例 188
16.3.2 进度条对话框实例 193
16.3.1 进度条对话框简介 193
16.2.3 向导式对话框使用的注意事项 193
16.3 进度条对话框(ProgressMonitorDialog类) 193
16.4 其他类型对话框 195
16.4.1 信息提示框(MessageBox类) 195
16.4.2 颜色选择对话框(ColorDialog类) 197
16.4.3 字体选择对话框(FontDialog类) 197
16.4.4 打印设置对话框(PrintDialog类) 198
16.4.5 目录选择对话框(DirectoryDialog类) 203
16.4.6 文件选择对话框(FileDialog类) 203
16.5 本章小结 205
17.1 Eclipse插件开发概述 208
17.1.1 插件开发简介 208
17.1.2 Eclipse插件开发的优势和不足 208
第17章 Eclipse插件开发起步 208
第3篇 插件开发篇 208
17.2 插件的Hello World 209
17.2.1 使用向导一步步创建HelloWorld 209
17.2.2 以空白项目为基础创建HelloWorld 211
17.3 本章小结 215
第18章 常用插件扩展点 216
18.1 加入透视图(perspectives) 216
18.1.1 准备工作 216
18.1.2 修改plugin.xml文件,设置透视图的扩展点 217
18.1.3 建立透视图类 217
18.1.4 运行插件 217
18.1.5 总结 218
18.2 在透视图中加入视图(views) 218
18.2.1 修改plugin.xml文件,设置视图的扩展点 218
18.2.2 创建视图类 219
18.2.3 修改透视图类SamplePerspective 220
18.3 在视图之间实现事件监听 221
18.2.4 运行插件 221
18.3.1 修改View1.java、View2.java 222
18.3.2 总结 223
18.4 给视图加下拉菜单和按钮 223
18.4.1 创建ActionGroup类 224
18.4.2 修改View1类 225
18.5 加入编辑器(editors) 226
18.5.1 修改plugin.xml文件,设置三个编辑器的扩展点 227
18.5.2 创建三个编辑器类 227
18.5.3 创建IEditorInput 228
18.5.4 打开编辑器 230
18.5.5 总结 231
18.6 编辑器类(EditorPart)方法使用说明 231
18.6.2 各方法的作用及含义 232
18.6.1 EditorPart方法的执行情况 232
18.6.3 一个实例 233
18.7 加入首选项(preferencePages) 235
18.7.1 修改plugin.xml文件,设置首选项的扩展点 235
18.7.2 建立首选项各结点对应的类 236
18.7.3 运行插件 239
18.7.4 总结 240
18.8 加入帮助(toc) 240
18.8.1 修改plugin.xml文件,设置三个帮助的扩展点 240
18.8.2 编写帮助目录文件toc 241
18.8.3 创建相应的帮助文档 242
18.8.4 总结 243
18.9 弹出信息式的帮助(contexts) 243
18.9.1 修改plugin.xml文件,设置弹出信息的扩展点 243
18.9.4 在界面组件中设置弹出信息 244
18.9.2 编写弹出信息的设置文件HelpContexts.xml 244
18.9.3 创建弹出信息对应的帮助文件 244
18.9.5 运行插件 245
18.9.6 总结 245
18.10 本章小结 246
第19章 Eclipse插件的国际化 247
19.1 国际化简介 247
19.2 为国际化创建一个插件的“段项目” 247
19.3 类程序的国际化 248
19.3.1 国际化前的准备工作 249
19.3.2 创建Message类 250
19.3.3 创建资源文件(*.properties) 250
19.3.4 修改myplugin2项目的程序 252
19.3.6 实践建议 253
19.3.5 运行插件,测试国际化 253
19.4 plugin.xml的国际化 254
19.4.1 创建plugin.xml的资源文件 254
19.4.2 修改plugin.xml文件 255
19.4.3 运行插件,测试plugin.xml的国际化 255
19.5 其他XML文件的国际化 256
19.5.1 在myplugin2.language项目创建国际化所需的目录结构 256
19.5.2 修改各语言的XML文档 256
19.5.3 运行插件,测试XML文件国际化 256
19.6 使用“外部化字符串”向导 256
19.6.1 运用“外部化字符串”向导的步骤 257
19.6.2 向导完成后的处理 258
19.6.3 总结 258
19.7 本章小结 258
20.1.2 POI的下载与安装 260
20.1.1 POI简介 260
第20章 报表:用POI与Excel交互 260
20.1 POI概述 260
20.2 将数据导出成Excel的实例 262
20.2.1 创建一个空白的Excel文件 262
20.2.2 往Excel单元格中写入信息 263
20.2.3 中文化的问题 264
20.3 使用式样 264
20.3.1 日期式样及文字对齐式样 264
20.3.2 边框式样 266
20.3.3 背景色及底纹式样 267
20.3.4 合并单元格 267
20.3.5 字体式样 268
20.4.1 设置页眉页脚 269
20.4.2 冻结和分割窗 269
20.4 更多的用法 269
20.4.3 浮动文字框及在表中画图 270
20.4.4 设置打印的范围 271
20.4.5 读取及修改Excel 271
20.5 本章小结 272
第21章 项目的打包与发行 273
21.1 应用程序项目的打包与发行 273
21.1.1 简介 273
21.1.2 打包的具体操作步骤 273
21.1.3 其他得到JAR包的方式 277
21.1.4 使用第三方插件对项目打包 278
21.1.5 让用户电脑不必安装JRE环境 280
21.1.6 更进一步的完善 280
21.2.2 打包的具体操作步骤 283
21.2.1 简介 283
21.2 插件项目的打包与发行 283
21.1.7 打包的其他说明 283
21.2.3 测试打包效果 285
21.3 用Ant来打包 285
21.4 本章小结 291
第22章 插件项目实战 292
22.1 前期准备工作 292
22.1.1 软件开发过程 292
22.1.2 本章项目开发环境的选择 293
22.1.3 安装MySQL 296
22.1.4 在Eclipse插件中连接MySQL数据库(版本V0001) 299
22.1.5 解决Java的中文问题 304
22.1.6 对字符集设置的测试结果 307
22.2.1 界面效果及实现功能 315
22.2 面向对象分析和数据表创建(版本V0010) 315
22.2.2 面向对象的分析与设计 316
22.2.3 创建数据表 325
22.2.4 给数据表插入数据 330
22.3 创建项目的主界面框架 332
22.3.1 前言 332
22.3.2 创建透视图及主功能视图(版本V0020) 332
22.3.3 创建“功能导航器视图”的树(版本V0020) 335
22.3.4 创建项目的图像注册表(版本V0030) 341
22.4 用户登录、退出功能的实现(版本V0040) 344
22.4.1 实现方案 344
22.4.2 界面部分的源代码 345
22.4.3 数据库部分的源代码 352
22.4.4 小结 357
22.5.1 前言 358
22.5.2 编辑器的创建与排序、翻页功能的实现(版本V0050) 358
22.5 “档案管理”编辑器的实现 358
22.5.3 实现删除用户功能(版本V0060) 372
22.5.4 实现新增用户功能(版本V0060) 374
22.5.5 实现修改用户的功能(版本V0070) 388
22.6 “成绩管理”编辑器的实现(版本V0080) 394
22.6.1 前言 394
22.6.2 单击结点打开视图 395
22.6.3 实现搜索视图SearchView 396
22.6.4 实现“成绩管理”编辑器 401
22.7 让软件适应多种数据库(版本V0090) 404
22.7.1 前言 404
22.7.2 解决方案 404
22.7.3 具体实现的源代码 405
22.8.2 首选项的源代码 407
22.8 首选项的实现(版本V0100) 407
22.8.1 前言 407
22.8.3 将程序中的设置值改成取之于首选项的设置 413
22.9 本章小结 414
第4篇 Web开发篇 416
第23章 Web环境的搭建(V0010) 416
23.1 概述 416
23.1.1 Eclipse的Web开发简介 416
23.1.2 本篇开发环境 416
23.1.3 CVS注意事项 416
23.2 Tomcat的下载与安装 417
23.2.1 下载Tomcat 417
23.2.2 安装Tomcat 418
23.2.3 启动Tomcat 419
23.3.1 下载Lomboz 420
23.3 Lomboz的下载与安装 420
23.3.2 安装Lomboz 421
23.4 Lomboz的环境设置 422
23.5 JSP的HelloWorld 423
23.5.1 设置Java的构建路径 423
23.5.2 创建一个J2EE项目 423
23.5.3 在Lomboz中启动Tomcat 424
23.5.4 发布hello模块 425
23.5.5 修改index.jsp 427
23.5.6 一些相关问题 427
23.6 如何不必发布就可以在IE上显示Web修改效果 427
23.7 配置Tomcat的数据库连接池 429
23.7.1 复制JDBC连接包 429
23.7.2 进入Tomcat的配置页面 429
23.7.3 修改Tomcat的server.xml文件 430
23.7.4 测试数据库连接池 431
23.8 本章小结 432
第24章 一个纯JSP+JavaBean实例(V0020) 433
24.1 JavaBean的环境配置 433
24.2 创建JavaBean及数据库层 434
24.2.1 AbstractDbOperate类 434
24.2.2 数据库连接管理器ConnectManager类 435
24.2.3 为SMS类增加一个字符串常量 436
24.2.4 修改工厂类SmsFactory 436
24.3 编写前台的JSP文件 436
24.3.1 示例的流程及效果 436
24.3.2 JSP文件说明 436
24.3.3 源代码 437
24.4 本章小结 441
25.2 Struts的下载及安装 443
25.1 概述 443
第25章 在Eclipse中使用Struts 443
25.3 Struts入门实例 446
25.3.1 Struts原理简介 446
25.3.2 用户登录实例 447
25.4 让Dreamweaver支持Struts标签 454
25.4.1 插件的下载 455
25.4.2 插件的安装 455
25.4.3 将struts标签添加到Dreamweaver中 455
25.4.4 插件的效果 456
25.5 深入struts-config.xml 456
25.5.1 页面转发 456
25.5.2 〈form-beans〉项之动态ActionForm 457
25.5.3 〈action-mappings〉项 458
25.5.4 使用DispatchAction类 459
25.5.6 解决命名冲突 460
25.5.5 使用多个struts-config.xml配置文件 460
25.6 验证的多种方法 461
25.6.1 方法一 461
25.6.2 方法二 462
25.7 使用更多的Struts标签 469
25.7.1 获知更多的标签 469
25.7.2 表单类标签 470
25.7.3 其他说明 472
25.8 本章小结 472
第26章 在Eclipse中使用Hibernate 473
26.1 概述 473
26.1.1 持久化框架产生的背景和现状 473
26.1.2 Hibernate简介 473
26.2.1 下载 474
26.2 Hibernate的下载和安装(V0050) 474
26.1.3 本章说明 474
26.2.2 安装 476
26.3 一个简单的Hibernate实例 478
26.3.1 创建XML映射文件:model.hbm.xml 478
26.3.2 创建管理session的类:HibernateUtil 479
26.3.3 创建一个用于测试的HibernateTest类 481
26.3.4 在hello目录下创建一个JSP文件:hibernateTest.jsp 482
26.3.5 总结 482
26.3.6 实践建议 483
26.4 继续深入使用Hibernate(V0060) 483
26.4.1 概述 483
26.4.2 编写XML映射文件 483
26.4.3 数据库操作类的实现 487
26.4.4 修改使用DbOperate类的程序 489
26.5.1 程序界面效果及功能说明 490
26.5 实现用户的修改、删除功能(V0070) 490
26.5.2 修改DbOperate类 491
26.5.3 修改用户列表userList.jsp文件 492
26.5.4 修改struts-config.xml 493
26.5.5 修改UserForm类 493
26.5.6 创建UserAction类 494
26.5.7 创建modifyUser.jsp 496
26.6 解决Tomcat的中文问题 497
26.7 Hibernate的自动生成工具 498
26.7.1 由XML映射文件生成数据库表 498
26.7.2 由实体类自动得到XML映射文件:class2hbm 499
26.7.3 由XML映射文件得到实体类:hbm2java 501
26.7.4 由数据库导出成XML映射文件:ddl2hbm.bat 502
26.8 本章小结 503
附录 光盘内容简介 504