从零开始学Eclipse
书 号:9787113115487
丛 书 名:
作 者:麦廷琮
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:59元
-
内容简介
1.本书由浅入深:本书的读者定位为Eclipse的初学者,也包括Java的初学者。先让初学者认识了解Eclipse,然后从Eclipse的最基本操作开始,逐渐深入。最终让读者熟练掌握Eclipse,能够用Eclipse完成并发布高品质的应用程序。2.注重项目实战:本书不是简单地讲授技术,在章节的编排上模拟一个软件项目的开发过程,这是本书的主要特色。本书的例子大部分都是取自现实中的项目,并根据教程的特点作了精简,提取出最具有代表性的部分。这些实例代码最终将会组合成一个完整的项目,读者沿着这些案例进行学习,也会体验到开发一个Eclipse应用程序的完整过程。3.书中采用了大量的插图。插图中用序号标示了操作的步骤,清晰明了。看着插图就好像手把手学习一样,迅速掌握。4.本书配全程视频。这是所有同类书都没有的。通过视频,读者可以更好的掌握书中的各个知识点。 -
前言
前 言
Java是目前市场占有率最高的编程语言,一直以来Java都缺乏一个类似Visual Studio的开发平台。笔者曾经用过NetBean和JBuilder。NetBean虽然免费,但是运行效率不高;JBuilder稍好一些,但是对电脑资源的消耗太大,且价格昂贵。
2003年,Eclipse 2.1刚刚推出不久,笔者怀着试一试的心态体验了一下,马上就被它流畅高效的运行过程所吸引;并且,Eclipse功能齐全,完全可以满足项目的开发需求。于是在短短的两天内,笔者的整个团队就把正在JBuilder上开发的项目转移到了Eclipse 2.1中。
随后的几年,Eclipse不断发展壮大,现在的Eclipse已经不再是一个单纯的Java开发工具了,它还是一个应用程序框架,既可以应用在桌面程序中,也可以应用到Web中,还可以应用到手机或者其他嵌入式设备上,Eclipse已经成为了Java项目的首选开发工具。
笔者的开发经历也是伴随着Eclipse的发展而变化的。最初是用Eclipse进行Web应用的开发;随后用Eclipse的SWT控件制作简单的桌面程序;在对Eclipse深入了解后,又利用Eclipse的RCP平台制作更复杂的企业级应用程序。刚开始时,Eclipse的参考资料并不多,也没有系统的教程。笔者和开发团队都是一边上网搜寻零散的参考资料,一边自己摸索进行实践的。
正因为有了这样的经历,体会到初学者要全面掌握Eclipse的应用不是一件容易的事情,所以就有了编写一本Eclipse教程的想法。本书由浅入深,可帮助初学者深入了解Eclipse的应用。
本书的特点
1.循序渐进,由浅入深
首先本书的读者定位为Eclipse的初学者,也包括Java的初学者。先让初学者认识Eclipse,然后从Eclipse的最基本操作开始,逐渐深入。最终让读者熟练掌握Eclipse,能够用Eclipse完成并发布高品质的应用程序。
2.技术全面,内容充实
本书的内容涵盖软件开发的整个流程。有简单的编写代码,有团队的协作,有GUI程序的开发,也有Web的应用开发;另外还有软件产品的国际化、帮助系统的制作以及产品最后的封装、发布。
3.图文并茂,步骤清晰
本书采用了大量的插图,插图中用序号标识了操作的步骤,清晰明了。看着插图就好像手把手教学一样,马上就能掌握。
本书内容的主要特点:
? 知识点的讲解:准确、较强的说明,一般在每节的开头位置,可让读者对相关概念、定义有个清晰的了解。
? 语法介绍:给出了书中所涉及的基本语法,为后面的编码打好基础。
? 操作步骤:准确、完整,读者只需要按照步骤操作,便能实现。
? 详尽的示例:重要的知识点或者语法都对应了典型的示例,便于读者更好地理解。
? 代码:给出了书中示例和案例的关键代码,并对代码进行了详细注释,便于读者阅读和理解。
? 温馨提示:在讲解过程中穿插了一些需要读者注意的知识点。包括:
? 提示:表示一些小知识或者“题外话”。
? 注意:需要读者引起注意和重视的知识点。
? 运行结果:书中的示例代码的运行结果。
4.案例精讲,深入剖析
本书的例子大部分都是取自现实中的项目,但不是照搬,而是根据教程的特点进行了调整,精选了最具有代表性的部分。有些实例代码最终将会组合成一个简单的应用程序,读者学习这些案例,可以体验到开发一个Eclipse应用程序的完整过程。
5.配套光盘,加速学习
为了帮助读者快速学习,本书制作了配套光盘。读者只要把光盘中的Eclipse复制到硬盘中即可使用,实践本书的所有案例。为了帮助读者更快、更方便地使用和学习,本书附送了完整的实例源代码、专业的教学PPT和视频,让读者学习起来更轻松、更容易。配套光盘具有以下特点:
? 完善的光盘运行界面:良好的人机互动界面,尽量简化操作,力求读者只要单击就可以完成操作。将本书随书光盘放入光驱后,即可进入本张光盘的运行主界面,如下图所示。
? 完善的多媒体教学视频:我们聘请专业人员精心录制了长达10小时的教学视频,对书中的重点知识和示例进行演示说明,使读者能够轻松掌握所学内容。教学视频截图如下所示。
? 精心组织的源代码。源代码按照书中章节依次排列,双击即可进入对应的文件夹,如下图所示。
6.网上讨论,共同进步
为了方便读者学习,本书还有项目网站,包含了书中的所有源代码。网址为http://code. google.com/p/smartstudio/。读者可以随时访问,获得最新版本的源代码。如果对本书中的内容有不明白的地方,还可以加入讨论组(网址:http://groups.google.com/group/smartdio),提出问题,编者将热心解答。
本书的内容
全书分为五篇,共26章,各篇章内容如下所述:
? 第1篇:基础知识(第1~5章)。主要讲解Eclipse的基础知识。
第1章:先让读者了解什么是Eclipse,了解Eclipse的历史和发展,并学习如何获得和安装Eclipse。
第2章:重点介绍Eclipse的界面和主要功能,并学习建立项目、进行开发的大致过程。
第3章:Eclipse的Java开发工具已经独立出来成为一个重要的插件——JDT。在这一章中将学习JDT的使用,包括Java代码编辑器、增强的Java构建器、各种调试和测试工具。
第4章:继续深入学习高级的Java开发功能。内容包括项目的构建、项目的运行和测试、JUnit的应用、代码的重构以及Eclipse所提供的其他辅助开发功能。
第5章:当前的软件开发工作已经不是一个人的单打独斗,往往需要一个团队的合作。这一章将重点介绍Eclipse中的团队和协作工具。
? 第2篇:SWT/Jface(第6~12章)。重点讲解如何使用Eclipse的SWT控件和JFace控件。
第6章:首先学习SWT的基本概念,了解SWT控件的基本原理和结构。本章还学习使用Eclipse中的可视化编辑工具Visual Edior。
第7章:详细讲解一些主要部件的使用,包括Composite、Text、Button、Spinner、Menu、Toolbar、Browser、Group、Tabfolder等。在菜单和工具栏的应用示例中,还将建立一个简单的窗口应用程序,演示建立GUI应用程序的基本过程。
第8章:学习SWT中的建立表格的3个关键部件——Table、TableItem、TableColumn。学习如何使用虚拟表(Virtual)或者线程,在Table中显示海量的数据。
第9章:树状列表和表格一样,都是常用的数据显示部件。而树状列表也是所有SWT部件中最为复杂的一个。本章依然是按照循序渐进的过程来详细讲解树状列表的应用。
第10章:JFace是在SWT基础上发展出来的控件,目的是简化SWT的应用。使用JFace,则可以大大简化Table和Tree的应用。本章从JFace为Table和Tree提供的Viewer开始,学习应用JFace。
第11章:对话框和向导都是GUI程序中常用的界面部件。JFace在SWT的基础上,提供了更丰富的对话框功能。这一章将学习如何使用JFace建立对话框和向导。
第12章:在图形界面中,无论是显示一个部件,还是显示一个图标,或者复杂一点的工作(如显示图像、打印数据)都是一系列绘图的过程。本章将学习SWT中所提供的绘图功能,利用这些绘图功能进行简单的绘画和图像处理。
? 第3篇:插件开发(第13~18章)。Eclipse为大中型的应用程序提供了完善的组件管理机制,提供了一个完整的界面框架。利用Eclipse作为应用程序的基础,开发者不需要在软件的界面上花太多的时间,只要集中精力开发插件功能就可以了。这一篇讲解如何利用Eclipse作为应用程序框架,以插件的形式,快速开发应用功能。
第13章:首先从技术的角度讲解Eclipse中插件的机制,然后学习Eclipse的插件开发工具PDE,最后通过开发一个简单的小插件,学习插件开发的基本过程,了解Eclipse插件的基本原理。
第14章:本章开始学习如何通过实现与界面相关的扩展点,开发Eclipse插件的界面。
第15章:本章学习Eclipse最新的命令架构。使用新的命令架构,只需要少量的Java编码,就可以实现复杂的命令功能。
第16章:在一个美观的界面中,图标是不可缺少的。这一章将学习如何运用Eclipse的图标管理机制,实现丰富多彩的软件界面。
第17章:继续前几章的项目案例,完善项目的界面,添加一个透视图、一个列表视图、一个编辑器。通过这些案例的学习可以建立更高级的插件界面。
第18章:Eclipse平台最大的优点是灵活的扩展机制。在前面连续多章的内容中,都是学习如何使用现成的扩展点的。这一章将进一步深入了解Eclipse的扩展点架构,然后建立自定义的新扩展点,让自己建立的应用程序也具有灵活的扩展能力。
? 第四篇:RCP产品(第19~23章)。经过前面的学习,一个软件产品已具雏形。这一篇重点讲解软件产品发布前的开发工作,包括文本的国际化、制作帮助系统、封装和打包。
第19章:学习什么是UTF-8编码,学习一个项目如何进行国际化准备。通过案例的学习实现国际化的技巧。
第20章:Eclipse平台提供了功能完善的帮助系统,RCP程序通过建立帮助的扩展也可以享用到这个帮助系统。这一章学习如何利用Eclipse提供功能,快速建立软件的帮助系统。
第21章:了解Eclipse的核心框架——Equinox,学习如何将Equinox和RCP作为应用程序的框架。在这个框架基础上自定义菜单、工具栏、状态栏。
第22章:学习利用RCP提供的功能,添加程序的首选项功能。
第23章:学习如何对RCP项目进行包装,把相关的插件包装在一起,建立一个可以独立运行的应用程序。最后通过简单的几个按钮就可以打包发布。
? 第5篇:Web应用开发(第24~26章)。讲解Eclipse Web应用开发。
第24章:学习如何使用WTP进行Web开发。WTP的功能相当丰富,可以用来编辑HTML、JavaScript,可以开发Servelet、JSP。这一章重点学习如何使用WTP开发JSP。
第25章:现在越来越多的项目开始采用JSF来开发Web应用程序。WTP也提供了丰富的JSF工具集,利用JSF可以大大减轻开发Web应用的负担。这一章学习如何建立JSF项目,如何使用JSF的UI组件,如何使用WTP提供的可视化编辑器开发JSF。
第26章:学习使用Eclipse提供的数据库工具——DTP建立数据库项目,还将学习使用对象持久化工具Dali和Hibernate,快速建立符合EJB 3.0规范的对象持久化项目。
本附录列出了Eclipse环境下的快捷键及功能。
适合的读者
? Java初学者。
? 编程爱好者。
? 大、中专院校的学生。
? 社会培训学生。
本书编者
本书主要由麦廷琮编著。其他参与编写的人员有陈强、陈燕、丁凤霞、丁礼友、范忠诚、黄俊灿、贾伟、李喜彤、林垚、尚文谊、孙亮亮、唐崇敏、陶则熙、王龙、王拥东、吴善才、徐砚颖、尹健慧、詹涵林、张薇、张小强、张运端、赵玉荣、郑慧、朱博、朱朝坤、邹小红。在此一并表示感谢!
由于时间仓促,加之作者水平有限,书中的疏漏和不足之处在所难免,敬请读者批评指正。如果读者在阅读本书的时候出现任何疑问,还可以发送电子邮件及时与我们联系,我们会尽快给予答复。我们的邮箱是HappySAnts@163.com,本书编辑邮箱是zhangshuqiangbooks@163.com。
编 者
2010年6月 -
目录
目 录
第1篇 基础知识
第1章 认识Eclipse( 教学视频:2分钟) 2
1.1 Eclipse简介 2
1.1.1 什么是Eclipse 2
1.1.2 Eclipse的含义 3
1.1.3 Eclipse的历史 3
1.1.4 使用Eclipse的著名项目 4
1.1.5 Eclipse的发展 4
1.1.6 Eclipse的开源协议EPL 5
1.2 安装和设置Eclipse 6
1.2.1 安装JDK 6
1.2.2 获得Eclipse 6
1.2.3 安装Eclipse 7
1.2.4 了解Eclipse的文件结构 7
1.3 第一次运行Eclipse 8
1.3.1 Splash屏幕 8
1.3.2 选择工作空间 9
1.3.3 开始首页 9
1.4 了解Eclipse的主要插件 10
1.5 获得更多的帮助 11
1.5.1 Eclipse的帮助系统 11
1.5.2 Eclipse的API文档 12
1.5.3 获得Eclipse的源代码 12
1.5.4 Eclipse的帮助中心 13
1.6 小结 13
第2章 快速入门( 教学视频:15分钟) 14
2.1 Eclipse的界面 14
2.1.1 Workbench的概念 14
2.1.2 透视图(Perspective) 15
2.1.3 编辑器(Editor) 15
2.1.4 视图(View) 17
2.1.5 Eclipse的全局设置 20
2.2 Eclipse的项目管理 21
2.2.1 Eclipse中的开发过程 21
2.2.2 新建项目向导 21
2.2.3 几种建立项目的途径 23
2.2.4 导入已有项目 23
2.2.5 新建文件 24
2.2.6 选择文件的编辑器 24
2.2.7 关闭和打开项目 25
2.2.8 设置工作集 26
2.2.9 删除项目 27
2.3 了解工作空间Workspace 28
2.3.1 Eclipse的Workspace 28
2.3.2 切换工作空间 28
2.4 安装插件 29
2.4.1 在哪里寻找插件 29
2.4.2 插件安装在plugins文件夹中 30
2.4.3 以链接的方式安装插件 30
2.4.4 安装不兼容3.4版的插件 31
2.4.5 在线安装插件 31
2.5 小结 32
第3章 JDT的使用( 教学视频:19分钟) 33
3.1 了解JDT的功能和界面 33
3.1.1 JDT基本功能 33
3.1.2 Java透视图 33
3.1.3 包浏览器视图(Package Explorer) 34
3.1.4 Java编辑器 34
3.1.5 继承视图(Hierarchy) 35
3.1.6 其他JDT相关的视图 36
3.2 JDT中的Java项目管理 37
3.2.1 新建Java项目的细节 37
3.2.2 Java项目的文件结构 38
3.2.3 设置Java项目的属性 38
3.3 试写HelloJava 39
3.3.1 新建包 39
3.3.2 新建HelloJava.java文件 40
3.3.3 编辑Java文件 40
3.3.4 运行HelloJava 41
3.4 试写HelloPDE 41
3.4.1 新建PDE项目 42
3.4.2 新建HelloPDE 43
3.5 使用高效率编辑辅助功能 43
3.5.1 Quick Fix快速修正功能 43
3.5.2 管理导入 44
3.5.3 代码提示 44
3.5.4 自动补全功能 45
3.5.5 代码美化 45
3.5.6 光标位置历史记录 45
3.6 小结 45
第4章 高级Java开发技术( 教学视频:17分钟) 46
4.1 构建和运行 46
4.1.1 自动构建 46
4.1.2 手动构建 46
4.1.3 运行和调试 46
4.1.4 设置调试断点 47
4.1.5 调试透视图 47
4.2 使用JUnit 48
4.2.1 JUnit简介 48
4.2.2 JUnit和Eclipse的关系 49
4.2.3 准备要测试的类 49
4.2.4 为测试另外建立源代码文件夹 50
4.2.5 新建单元测试 50
4.2.6 输入测试代码 52
4.2.7 运行单元测试 52
4.2.8 查看单元测试的结果 53
4.3 代码重构功能 53
4.3.1 Eclipse中的重构类型 54
4.3.2 类重命名 54
4.3.3 包重命名 55
4.3.4 类属性和方法重命名 55
4.3.5 移动类的位置 56
4.3.6 抽取抽象类和接口 56
4.3.7 迁移属性或方法到父类 57
4.3.8 提取匿名类 59
4.3.9 把内建类变成顶级类 61
4.4 高级辅助功能 62
4.4.1 JDT提供的源代码辅助功能 62
4.4.2 方法重载辅助 63
4.4.3 生成getter和setter 64
4.4.4 建立委派模式(Delegate) 65
4.4.5 对类成员进行排序 66
4.4.6 建立try catch 67
4.5 小结 70
第5章 团队和版本管理( 教学视频:15分钟) 71
5.1 版本控制的基本概念 71
5.1.1 什么是版本控制系统 71
5.1.2 什么是SVN 71
5.1.3 SVN的基本原理 71
5.1.4 SVN的复制—修改—合并方案 72
5.2 搭建SVN服务器 73
5.2.1 安装Visual SVN 74
5.2.2 建立版本库 74
5.2.3 建立用户 75
5.3 安装Subclipse 75
5.4 在Eclipse中使用SVN 77
5.4.1 建立版本仓库的连接 77
5.4.2 文件的同步标志 78
5.4.3 发送修改到服务器 78
5.4.4 获取SVN服务上的新版本 79
5.4.5 解决冲突 79
5.4.6 从SVN服务器上导入新的项目 80
5.5 小结 82
第2篇 SWT/JFace的使用
第6章 SWT界面编程( 教学视频:15分钟) 83
6.1 SWT的基本概念 84
6.1.1 SWT的特点 84
6.1.2 在Eclipse以外使用SWT 85
6.1.3 SWT的包结构 85
6.1.4 SWT的主要Widget部件 86
6.1.5 SWT的主要布局Layout 86
6.1.6 SWT的事件Event对象 87
6.1.7 SWT的事件监听器Listener 87
6.1.8 获得SWT的API参考 87
6.2 Hello SWT 88
6.2.1 在项目中导入SWT的库 88
6.2.2 建立HelloSWT.java 88
6.2.3 初始化Shell的内容 89
6.2.4 布局和LayoutData 90
6.2.5 初始化控件 90
6.2.6 org.eclipse.swt.SWT的预定义常量 91
6.2.7 编写事件方法 91
6.2.8 运行HelloSWT 92
6.3 可视化界面编程 94
6.3.1 Visual Editor简介 94
6.3.2 安装Visual Editor 94
6.3.3 使用VE新建一个界面部件 95
6.3.4 Visual Editor的界面 95
6.3.5 添加部件 96
6.3.6 添加部件时的布局 96
6.3.7 运行VE设计的部件 97
6.4 小结 97
第7章 SWT控件详解( 教学视频:61分钟) 98
7.1 用Composite制作可重用部件 98
7.1.1 部件重用的原理 98
7.1.2 重载新的Composite 98
7.1.3 可重用账号密码部件的设计 99
7.1.4 初始化Composite的子部件 100
7.2 GridLayout详解 101
7.2.1 GridLayout的布局方式 101
7.2.2 设置GridLayout的属性 102
7.2.3 单元格和GridData 102
7.3 Text单行文本框 103
7.3.1 密码文本框 103
7.3.2 监听文本框中内容的修改 103
7.3.3 限制输入字符 104
7.4 Label的用途 105
7.5 Group的应用 106
7.5.1 添加Group 106
7.5.2 在Group上添加子部件 107
7.6 Button和Text的其他用法 108
7.6.1 Button的样式 108
7.6.2 Button作为Radio使用 109
7.6.3 Button作为复选框(CheckBox) 109
7.6.4 Button作为箭头按钮 109
7.6.5 Text作为TextArea使用 109
7.7 TabFolder的应用 111
7.7.1 建立TabFolder 111
7.7.2 TabFolder的应用步骤 112
7.7.3 TabItem的使用 113
7.7.4 在底端显示选项卡标签 113
7.8 菜单栏和工具栏 113
7.8.1 建立包含菜单栏和工具栏的程序 113
7.8.2 建立菜单栏 115
7.8.3 Menu和MenuItem的样式 116
7.8.4 建立工具栏 116
7.8.5 Toolbar和ToolItem的样式 117
7.8.6 响应菜单栏、工具栏的事件 117
7.9 小结 119
第8章 表格和数据绑定( 教学视频:18分钟) 120
8.1 Table的基本用法 120
8.1.1 一个简单的Table 120
8.1.2 带有表头和网格线的Table 121
8.1.3 Table的相关样式 122
8.1.4 带有复选框的表格 122
8.1.5 TableItem的应用 122
8.1.6 TableColumn的应用 123
8.2 解决海量数据的性能问题 123
8.2.1 用虚拟表格提升性能 124
8.2.2 运用虚拟表格的步骤 124
8.2.3 用线程提升表格性能 125
8.2.4 使用线程的例子 125
8.2.5 SWT中的线程管理 127
8.3 表格的事件 128
8.3.1 获得被选择的行或单元格 128
8.3.2 widgetDefaultSelected和widgetSelected 129
8.3.3 获得表格中复选框的状态 129
8.3.4 删除、清空表格的行 130
8.3.5 删除用户选择的行 130
8.3.6 删除勾选的行 131
8.4 单元格上的编辑功能 133
8.4.1 单元格编辑器的原理 133
8.4.2 单元格上的文本编辑器 133
8.4.3 实现多个编辑器 135
8.4.4 双击进入编辑状态 137
8.5 小结 138
第9章 树状列表( 教学视频:5分钟) 139
9.1 Tree的基本用法 139
9.1.1 最基本的树状列表样式 139
9.1.2 Tree的样式 141
9.1.3 TreeItem的使用 141
9.1.4 TreeColumn的属性 142
9.2 提升海量数据时的性能 142
9.2.1 虚拟树表的原理 142
9.2.2 用虚拟表实现文件系统列表 142
9.3 Tree的事件 145
9.3.1 建立一个带复选框的树表实例 145
9.3.2 监听Tree的选择事件 148
9.3.3 监听勾选事件 150
9.3.4 监听鼠标事件 150
9.3.5 通过鼠标事件实现弹出提示 151
9.4 Tree的编辑功能 153
9.4.1 删除结点的问题 153
9.4.2 拖放操作的原理 153
9.4.3 实现拖放操作 154
9.5 小结 157
第10章 JFace的Viewer( 教学视频:10分钟) 158
10.1 JFace概述 158
10.1.1 什么是JFace 158
10.1.2 JFace的组件 158
10.1.3 JFace的包结构 158
10.2 使用JFace简化表格应用 159
10.2.1 直接使用Table部件的情况 159
10.2.2 使用TableViewer建立表格 159
10.2.3 了解TableViewer 161
10.2.4 实现IStructuredContentProvider 163
10.2.5 使用数据库的IStructuredContentProvider 164
10.2.6 实现ILabelProvider和ITableLabelProvider 164
10.2.7 建立编辑器CellEditor 165
10.2.8 实现ICellModifier 166
10.3 在TableViewer中使用虚拟表 167
10.4 TreeViewer简化Tree的使用 169
10.4.1 树状结构的数据 169
10.4.2 使用TreeViewer建立树状列表 170
10.4.3 实现ITreeContentProvider 171
10.4.4 ITreeContentProvider的主要方法 173
10.4.5 实现LabelProvider 173
10.5 用JFace建立主程序窗口 175
10.5.1 应用ApplicationWindow 175
10.5.2 建立窗口内容 177
10.5.3 建立Action 177
10.5.4 建立菜单命令 178
10.5.5 建立工具栏 178
10.5.6 运行测试 179
10.6 小结 179
第11章 对话框和向导( 教学视频:21分钟) 180
11.1 SWT的对话框 180
11.1.1 Dialog的一个简单实现 180
11.1.2 消息对话框MessageBox 181
11.1.3 MessageBox的样式 182
11.1.4 MessageBox实现的提问对话框 183
11.1.5 文件对话框FileDialog 184
11.2 JFace的对话框 187
11.2.1 实现消息对话框MessageDialog 187
11.2.2 TitleAreaDialog带有标题栏的对话框 188
11.2.3 动态变化信息和按钮 190
11.2.4 获取TitleAreaDialog中输入的数据 192
11.3 进度对话框ProgressMonitorDialog 192
11.3.1 实现进度对话框的例子 192
11.3.2 IRunnableWithProgress和IProgressMonitor对象 194
11.4 向导对话框 194
11.4.1 实现向导的步骤 194
11.4.2 建立WizardPage 194
11.4.3 实现Wizard 198
11.4.4 在向导上显示进度条 200
11.4.5 实现WizardDialog 200
11.5 小结 201
第12章 SWT的绘图( 教学视频:25分钟) 202
12.1 基本绘图 202
12.1.1 在Shell上画图 202
12.1.2 在Canvas上画图 203
12.2 图像处理 209
12.2.1 在GC上画图像 209
12.2.2 在Canvas上画图像 210
12.2.3 通过ImageData获得图像的信息 210
12.3 在内存中处理图像 211
12.3.1 通过ImageLoader装载图像 211
12.3.2 在内存中绘画 211
12.3.3 建立内存中的GC 212
12.3.4 用Transform旋转图形 212
12.3.5 Transform的其他变形 213
12.3.6 图像叠加 213
12.3.7 使用ImageLoader保存图像 214
12.4 SWT的打印功能 215
12.4.1 与打印相关的3个类 215
12.4.2 SWT打印的过程 215
12.4.3 使用系统默认打印设置 216
12.5 小结 217
第3篇 插件开发
第13章 插件开发基础( 教学视频:11分钟) 220
13.1 插件开发的基本概念 220
13.1.1 Eclipse 的插件架构 220
13.1.2 扩展点和插件 221
13.1.3 Plug-in、Fragment和Feature 221
13.1.4 PDE提供的开发工具 222
13.2 新建插件项目 222
13.2.1 开发插件项目的过程 222
13.2.2 插件功能设计 223
13.2.3 关于插件的唯一ID 223
13.2.4 新建插件项目向导 223
13.2.5 PDE透视图 224
13.2.6 PDE项目的文件结构 224
13.2.7 PDE可视化编辑器 224
13.3 编写插件代码 225
13.3.1 编写Activator 225
13.3.2 何时构造Activator 226
13.3.3 使用扩展点向导添加扩展 227
13.3.4 设置快捷菜单的扩展 227
13.3.5 org.eclipse.ui.popupMenus扩展点的主要属性 228
13.3.6 plugin.xml和MANIFEST.MF文件 229
13.3.7 编写Action 230
13.4 插件的运行调试 231
13.4.1 按默认状态运行当前插件 231
13.4.2 调试运行时的用户文件夹 232
13.4.3 设置插件的运行和调试 232
13.5 插件的发布 233
13.5.1 直接发布插件 234
13.5.2 新发布插件的文件结构 234
13.5.3 把插件发布成单一的JAR文件 235
13.6 小结 235
第14章 开发插件的界面( 教学视频:20分钟) 236
14.1 开发插件界面的过程 236
14.1.1 插件界面的组成 236
14.1.2 开发界面的过程 236
14.2 设计企业架构管理程序 237
14.3 建立Workbench插件项目 238
14.3.1 利用向导建立基本部件 239
14.3.2 UI扩展依赖的插件 239
14.3.3 项目的文件结构和包的结构 240
14.3.4 新建数据类 240
14.4 建立视图 244
14.4.1 建立企业结构视图的部件 244
14.4.2 继承ViewPart建立新视图 248
14.4.3 设置View扩展点 251
14.4.4 org.eclipse.ui.views扩展点详解 252
14.4.5 试运行视图 253
14.5 小结 254
第15章 Eclipse的命令架构( 教学视频:70分钟) 255
15.1 命令架构的概述 255
15.1.1 旧的命令架构 255
15.1.2 新的命令架构 255
15.2 建立command扩展 256
15.2.1 添加org.eclipse.ui.commands扩展 256
15.2.2 org.eclipse.ui.commands下的扩展分类 256
15.2.3 建立Command Handler 257
15.2.4 设计Command Handler 258
15.2.5 编写Command Handler 258
15.2.6 添加新的command扩展 259
15.2.7 command扩展的属性 260
15.2.8 category的属性 260
15.3 建立视图工具栏和视图菜单 260
15.3.1 添加org.eclipse.ui.menus扩展 260
15.3.2 通过org.eclipse.ui.menus扩展添加视图工具栏 261
15.3.3 在视图工具栏上添加command 261
15.3.4 测试视图工具栏 262
15.3.5 添加视图菜单 263
15.3.6 为视图添加快捷菜单 263
15.3.7 添加更多的命令 264
15.4 命令架构中的表达式扩展 266
15.4.1 命令的“可用”和“不可用”状态 266
15.4.2 增加org.eclipse.core.expressions.definitions扩展 266
15.4.3 Eclipse的Expression Definition 267
15.4.4 数量条件的表示 268
15.4.5 如何监听选择状态 269
15.4.6 添加激活命令的条件 269
15.4.7 org.eclipse.ui.handlers扩展 269
15.4.8 定义Handler的激活条件 270
15.4.9 定义Handler的可用条件 270
15.4.10 定义更多的条件 271
15.5 绑定快捷键 272
15.5.1 添加org.eclipse.ui.bindings扩展 272
15.5.2 定义快捷键 272
15.5.3 快捷键的作用范围 273
15.6 定义Context扩展 273
15.6.1 添加org.eclipse.ui.contexts扩展 273
15.6.2 指定视图的context 274
15.6.3 把快捷键限定在特定的context下 274
15.7 添加系统命令 274
15.8 小结 275
第16章 图标资源( 教学视频:无) 276
16.1 Eclipse的图标规范 276
16.1.1 图标的应用过程 276
16.1.2 Eclipse中图标的分类 277
16.1.3 图标的文件格式 277
16.1.4 图标文件的部署 278
16.1.5 与图标相关的类 278
16.2 注册和获取图标资源 279
16.2.1 设计和部署图标 279
16.2.2 定义图标的Keyid 279
16.2.3 通过图像Keyid获取ImageDescriptor 280
16.2.4 把图像放入ImageRegistry 280
16.2.5 从ImageRegistry中获取Image 281
16.2.6 何时销毁Image 283
16.3 小结 283
第17章 透视图和编辑器( 教学视频:55分钟) 284
17.1 建立透视图 284
17.1.1 透视图的布局设计 284
17.1.2 新建透视图扩展 284
17.1.3 org.eclipse.ui.perspectives扩展点详解 286
17.1.4 添加透视图中的视图 286
17.1.5 重载createInitialLayout方法 288
17.1.6 透视图的布局 288
17.1.7 隐藏和显示编辑器区 289
17.2 建立编辑器 290
17.2.1 建立编辑器的部件 290
17.2.2 添加Editor扩展 292
17.2.3 org.eclipse.ui.editors扩展点详解 293
17.2.4 实现IEditorInput 293
17.2.5 实现EditorPart 294
17.2.6 建立调用编辑器的命令 296
17.2.7 运行使用编辑器 298
17.3 小结 299
第18章 建立自己的扩展点( 教学视频:163分钟) 300
18.1 定义新的扩展点 300
18.1.1 扩展点设计 300
18.1.2 定义扩展接口 300
18.1.3 建立新的扩展点 301
18.1.4 扩展点的schema文件夹 302
18.2 设计新扩展点 302
18.2.1 打开扩展点schema文件编辑器 302
18.2.2 新增扩展点子元素 303
18.2.3 新增子元素的class属性 303
18.2.4 添加id属性 304
18.2.5 添加name属性 304
18.2.6 添加icon属性 304
18.2.7 设置扩展点的子元素序列 305
18.2.8 添加personModifier子元素 306
18.3 捕获扩展 307
18.3.1 添加捕获扩展的方法 307
18.3.2 根据扩展设置建立用户界面 308
18.3.3 获取扩展设置的属性 309
18.4 测试新扩展点 310
18.4.1 建立com.smartdio.company.editors扩展 310
18.4.2 实现IPersonEditor 310
18.4.3 运行测试扩展 311
18.5 小结 311
第4篇 RCP产品
第19章 国际化支持( 教学视频:9分钟) 314
19.1 国际编码UTF-8 314
19.1.1 统一字符编码标准Unicode 314
19.1.2 UTF-8和Unicode 314
19.1.3 Java与国际化 315
19.1.4 了解Java的Properties文件 315
19.2 Eclipse的国际化开发环境 316
19.2.1 设置项目默认编码为UTF-8 317
19.2.2 安装Properties编辑器 317
19.2.3 建立国际化的步骤 318
19.3 移植字符串到Properties文件 318
19.3.1 打开Externalize Strings窗口 318
19.3.2 编辑键的名称 319
19.3.3 设置Messages类和Properties文件的位置 319
19.3.4 建立Messages.java文件 320
19.3.5 应用字符翻译 320
19.3.6 编辑Properties文件 321
19.3.7 使用PropertiesEditor 322
19.3.8 制作中文版的Properties文件 322
19.4 自动转换界面标签字符 322
19.4.1 编写WidgetMessagesUtil 323
19.4.2 修改Messages类 326
19.4.3 修改界面字符标签 326
19.4.4 插入转换的方法 327
19.4.5 没有对应词条的情况 328
19.5 扩展点标签字符的翻译 328
19.5.1 建立扩展点的翻译 328
19.5.2 翻译MANIFEST.MF文件 328
19.5.3 修改plugin.xml文件的翻译 329
19.5.4 新建plugin.properties文件 330
19.5.5 在PDE编辑器中的预览效果 330
19.6 小结 330
第20章 制作帮助内容( 教学视频:15分钟) 331
20.1 Eclipse的帮助系统 331
20.1.1 帮助系统是一个Web应用 331
20.1.2 帮助系统是插件 331
20.2 建立帮助项目 332
20.3 建立帮助内容 334
20.3.1 帮助文档的文件结构 334
20.3.2 添加帮助扩展 334
20.3.3 org.eclipse.help.toc扩展点 335
20.3.4 编辑TOC文件 336
20.3.5 修改内容章节 337
20.3.6 运行测试帮助内容 338
20.4 实现动态帮助 338
20.4.1 添加org.eclipse.help.contexts扩展 339
20.4.2 关联contexts配置文件 339
20.4.3 建立contexts配置文件 339
20.4.4 使用Context可视化编辑器 340
20.4.5 关联视图的动态帮助 341
20.4.6 关联对话框的动态帮助 342
20.4.7 关联命令的动态帮助 342
20.5 小结 342
第21章 基于RCP的产品开发( 教学视频:14分钟) 344
21.1 Eclipse平台的核心架构 344
21.1.1 Eclipse的核心框架——Equinox 344
21.1.2 Eclipse中插件、程序、产品的概念 344
21.2 建立RCP产品项目 345
21.2.1 新建RCP项目 345
21.2.2 RCP插件项目的文件结构 347
21.2.3 认识org.eclipse.core.runtime.applications扩展点 347
21.2.4 认识IApplication 348
21.2.5 RCP关键对象的启动过程 349
21.2.6 扩展点org.eclipse.core.runtime.products 350
21.2.7 试运行RCP项目 350
21.3 定制RCP程序的菜单 352
21.3.1 基本菜单模式 352
21.3.2 使用ActionBarAdvisor定制菜单 352
21.3.3 添加Workbench预定义的菜单命令 353
21.3.4 添加更多的菜单命令 355
21.5 添加工具栏 356
21.6 小结 358
第22章 首选项( 教学视频:4分钟) 359
22.1 建立首选项扩展 359
22.1.1 添加org.eclipse.ui.preferencePages扩展 359
22.1.2 打开首选项窗口 360
22.1.3 org.eclipse.ui.preferencePages详解 361
22.1.4 实现IWorkbenchPreferencePage 361
22.1.5 建立选项字段 362
22.1.6 org.eclipse.core.runtime.preferences扩展点详解 362
22.2 首选项的应用 363
22.2.1 首选项的初始化 363
22.2.2 IPreferenceStore的使用 363
22.2.3 自定义首选项页 364
22.3 小结 365
第23章 产品包装和发布( 教学视频:11分钟) 366
23.1 建立Feature项目 366
23.1.1 Feature项目的作用 366
23.1.2 新建Feature项目 366
23.1.3 设置Feature项目 367
23.1.4 发布Feature项目 368
23.2 建立产品设置 368
23.2.1 新建产品设置文件 368
23.2.2 编辑产品设置文件 369
23.2.3 设置发布时包含的插件 369
23.2.4 设置产品的运行环境 370
23.2.5 设置产品的启动器 370
23.2.6 设置启动画面 371
23.2.7 设置品牌特征 371
23.3 运行和发布产品 372
23.3.1 测试运行产品 372
23.3.2 使用发布向导发布产品 373
23.3.3 产品的文件结构 373
23.4 小结 374
第5篇 Web应用开发
第24章 Web开发工具( 教学视频:8分钟) 376
24.1 安装和设置WTP 376
24.2 建立JSP项目 377
24.2.1 新建动态网页项目 377
24.2.2 动态网页项目的项目结构 378
24.2.3 建立HelloWTP Bean 378
24.2.4 建立JSP文件 379
24.2.5 JSP编辑器 380
24.3 JSP的运行和测试 380
24.3.1 选择运行服务器 380
24.3.2 通过服务器视图观察运行状态 381
24.3.3 使用Eclipse的嵌入浏览器运行JSP 382
24.3.4 修改后重新发布 383
24.3.5 控制Web服务器 383
24.3.6 设置Web服务器 384
24.3.7 设置手工发布项目 384
24.4 分发Web项目 385
24.5 小结 385
第25章 在WTP中进行JSF开发( 教学视频:15分钟) 386
25.1 JSF概述 386
25.2 开发JSF项目 387
25.3 编辑JSF支持的JSP 389
25.3.1 用可视化编辑器编辑JSP 389
25.3.2 添加JSF部件 390
25.3.3 编辑JSF部件的属性 390
25.3.4 设计JSF实现的登录界面 390
25.4 制作JSF的Bean 391
25.4.1 使用JSF可视化配置工具 391
25.4.2 建立Bean的向导 392
25.4.3 编写Bean代码 392
25.4.4 在JSF中使用Bean 393
25.4.5 添加验证器 393
25.5 设计导航规则 394
25.5.1 添加更多的页面 394
25.5.2 导航规则的可视化编辑器 395
25.5.3 测试JSF页面 395
25.6 小结 395
第26章 数据库与对象持久化( 教学视频:12分钟) 396
26.1 数据库工具DTP 396
26.1.1 DTP数据库工具介绍 396
26.1.2 安装DTP数据库工具 396
26.1.3 安装MySQL数据库 397
26.1.4 下载MySQL的连接器 397
26.1.5 设置DTP的数据库连接 398
26.2 使用DTP管理数据库 398
26.2.1 打开数据库开发透视图 399
26.2.2 连接数据库 399
26.2.3 查看数据库的结构 400
26.2.4 查看数据表的数据 400
26.2.5 建立数据表 400
26.2.6 执行建立表格的SQL 401
26.3 对象持久化工具Dali 402
26.4 建立JPA项目 404
26.4.1 新建JPA项目 405
26.4.2 JPA透视图 405
26.5 建立JPA实体 406
26.5.1 建立普通Java类 406
26.5.2 把类添加到JPA映射列表 406
26.5.3 映射为JPA实体类 406
26.5.4 设置映射字段的属性 407
26.5.5 映射主键设置 407
26.6 应用Hibernate 408
26.6.1 建立Hibernate配置文件 408
26.6.2 编辑Hibernate配置文件 409
26.6.3 使用Hibernate Configurations视图 410
26.6.4 使用Hibernate工具建立数据表 410
26.6.5 显示对象映射的流程图 410
26.6.6 编写Hibernate启动器 411
26.6.7 编写测试程序 412
26.6.8 查看运行结果 413
26.7 小结 413
附录A Eclipse环境下的快捷键及功能 414 -
作者介绍
主要拟约作者顺序姓名学历职称学科专长通 讯 地 址1麦廷琮硕士软件工程师Java项目开发作者单位广东省肇庆市朗明信息技术有限公司邮政编码526040电 话0758-23148372 作者单位 邮政编码 电话 -
编辑推荐
-
书评书荐
-
附件下载
图书推荐