`

RCP总结

    博客分类:
  • JAVA
阅读更多
.简介

Rich client platform 富客户端平台:应用于JAVA桌面程序开发;
一个Eclipse插件: 
Eclipse插件:普通插件(对宿主的扩展);
脱离Eclipse框架独立运行;
与J2EE(jsp,Servlet,ejb)完整结合;
目前,国内 RCP 应用也逐渐发展和壮大起来, RCP 有希望扭转Java桌面应用的颓势。如 Jlibrary 是一款开源的 CMS 系统,就是 Eclipse RCP的典型应用,还有Nomad PIM(个人信息管理软件),ETC…。

2.RCP体系结构

RCP就是一个简化了的eclipse平台,它只包含5个插件:
runtime是核心类,
osgi是定义的一个标准,用来规范不同的插件,让他们可以相互协作。
剩下的三个插件Workbench、SWT、JFace是用来显示给用户界面的。 



填充RCP框架的"血肉"(内容:) ):

1.Workbench
每个RCP应用程序,对应一个Workbench(工作台),应用程序的主窗体.

2.Perspective
模块化单元,一个Workbench可包含多个Perspective(透视图),各个透视图之间是相互独立的单元.
主要功能:布局视图

3.View
视图:主要负责信息的显示.一个透视图可包含一或多个视图.
特点:
可灵活布局于特定透视图,
作为一个独立的显示模块, 可重用

4.Editor
编辑器:信息编辑区域.一个透视图对应一个编辑器.
特点:可以与视图进行及时交互;方便用户编辑数据.

几个不得不知道的文件:

● src文件夹下为运行插件时的一些类文件。

● MANIFEST.MF为插件清单文件,是插件与外界沟通的桥梁。





MANIFEST.MF文件是保存OSGi 的 Bundle文件。该文件也就是与其他平台的接口,通过该接口,外部平台可以使用该Eclipse的插件程序。关键的key值所表示的意义:

  Bundle-Name:插件的名称。

  Bundle-SymbolicName:为插件的唯一标识。


  Bundle-Activator:为主程序启动的类的全名。

  Require-Bundle:系统编译和运行的依赖项,可以加入其他所必需的插件。



● build.properties文件为构建RCP程序时所导入的类库设置。
build.properties是保存构建、打包和导出插件所需的所有信息的文件。




● plugin.xml是最重要的文件,该文件是插件的配置文件,集中管理插件内部的运行,在该文件中可以查找所有与该插件有关的信息。



plugin.xml文件是插件开发中最重要的文件,包含声明插件的扩展和扩展点配置。
id="application",表示该扩展点的标识。
point="org.eclipse.core.runtime.applications",表示扩展点的类型。这里表示该扩展点是系统扩展点,例如另一个扩展点类型“org.eclipse.ui.perspectives”为透视图扩展点。
<run>子项中定义了系统启动的class类,为com.fengmanfei.myrcp.Application,可以在源文件下找到这个.java源文件。
对于不同的扩展点有不同的配置元素,读者可以参考Eclipse的帮助文档。

3.RCP运行基本原理

A 插件类MyRCPPlugin
系统运行后首先在MANIFEST.MF文件中找到Bundle-Activator所对应的插件类.该类主要创建整个插件的对象,是插件的全局对象。可以通过该类的静态方法获得插件对象的引用,然后获得插件的各种信息,包括插件所对应的Bundle文件信息、log日志对象和工作台对象等。


B应用程序类Application
创建了插件类后,如何来创建主窗口呢?Eclipse运行的程序都是通过扩展点来配置的,初始化的界面程序也不例外,也是在配置的插件文件中配置好的。创建了插件类后,程序会自动查找plugin.xml文件,是否有对应的应用程序扩展点org.eclipse.core. runtime. applications。如果有,再找到该运行程序所对应的class,然后创建对象。

C工作台窗口类
该类创建时首先对工作台进行设置。是在preWindowOpen方法中实现的。该方法会在窗口打开之前调用。另外,也可以通过覆盖父类中的方法来进行窗口打开之前的配置工作和窗口关闭的善后处理工作。

D操作类
创建窗口时,会创建菜单栏和工具栏,此时创建的是ApplicationActionBarAdvisor对象。在该类中,可以添加各种操作项来创建菜单栏、工具栏和状态栏等。

E透视图类
最后,在创建工作台对象时,要指定一个默认的透视图对象。要实现一个透视图类,就要实现IPerspectiveFactory接口。


4.RCP优势

A.开发效率相对较快;
B.界面简洁不失美观;
C.运行速度快;
D.跨平台;
E.与J2EE完整结合;
F.基于Internet布署,维护更加方便;

分享到:
评论

相关推荐

    rcp研究总结

    本文将深入探讨RCP(Rich Client Platform)的研究总结,RCP是Eclipse框架的核心组成部分,用于构建强大的Java桌面应用程序。 首先,Eclipse作为一个开源的Java集成开发环境(IDE),由IBM贡献给社区,并逐渐成长为...

    RCP在线升级,RCP在线升级

    总结起来,RCP在线升级是一个涉及元数据管理、依赖关系解析、用户交互以及错误处理的复杂过程。通过精心设计和充分测试,开发者可以提供一个高效且可靠的升级体验,让RCP应用的用户始终享受到最新的功能和改进。在...

    RCP 界面布局实例

    总结来说,RCP界面布局实例涉及了视图、编辑器、透视图等关键概念,以及堆叠布局、网格布局等多种布局策略。通过理解和熟练运用这些知识点,开发者可以构建出高效、直观且易于定制的RCP应用程序,如本例中的CRM系统...

    rcp学习好资料

    **知识点总结** 1. **Eclipse RCP基础**:了解RCP的概念、架构以及如何设置开发环境。 2. **用户界面设计**:掌握创建菜单、工具栏、对话框以及视图和透视图的方法,以构建丰富的用户交互体验。 3. **2D绘图**:...

    rcp工程的描述

    总结来说,RCP是一种强大的开发平台,它利用`features`和`plugins`目录组织和管理代码,通过OSGi和扩展点机制实现模块间的交互,结合工作台和模型驱动开发,提供了一个高效、可扩展的桌面应用程序开发环境。...

    在RCP中显示JFreeChart报表

    总结起来,将JFreeChart报表集成到RCP应用涉及引入依赖、创建视图、绘制和展示图表,以及可能的交互功能实现。这不仅可以提升RCP应用的数据可视化能力,还能为用户提供更直观的数据解读体验。通过实践和不断探索,你...

    RCP 中文文档

    总结来说,Eclipse RCP是一种强大的开发工具,适合构建复杂的企业级桌面应用。通过学习RCP,开发者可以利用其组件化和插件化的特性,快速构建功能丰富的应用程序,并且有丰富的社区支持和资源可供参考。"RCP 中文...

    用RCP构建GEF程序

    【用RCP构建GEF程序】的PPT教程主要涵盖了Eclipse Rich Client Platform (RCP)和...总结来说,通过Eclipse RCP和GEF,开发者能够快速构建出强大且用户友好的图形化应用程序,适用于各种复杂的业务需求和桌面应用场景。

    Eclipse RCP 插件开发指南

    ### 总结 通过本指南的学习,您应该已经对 Eclipse RCP 插件开发有了全面的理解。从插件体系结构到具体的用户界面组件设计,每一个知识点都旨在帮助开发者构建出高质量、可扩展的应用程序。未来,在掌握了基础知识...

    Eclipse RCP应用系统开发方法与实战

    总结,Eclipse RCP为开发者提供了强大的工具集,可以构建复杂的桌面应用程序。通过理解其组件模型,掌握开发流程,以及运用实战技巧和最佳实践,开发者可以高效地开发出高质量的Eclipse RCP应用系统。在实践中,不断...

    RCP开发,调用ActiveX控件

    总结来说,"RCP开发,调用ActiveX控件"是一个关于在Eclipse RCP应用程序中利用ActiveX技术进行电子签章集成的实际操作。这需要理解RCP的架构和插件机制,以及如何在Java中与ActiveX控件进行交互。通过`...

    rcp自己通过扩展点新建java项目

    总结来说,`rcp自己通过扩展点新建java项目`是一个涉及到Eclipse RCP插件开发、扩展点注册、向导实现和资源管理的综合性任务。掌握这个过程不仅有助于提升Eclipse RCP应用的用户体验,也是深入理解Eclipse插件系统的...

    基于 OSGI 的 RCP 测试 2 Standard

    **总结** 基于OSGi的RCP测试2 Standard旨在确保应用的模块化、动态性和可靠性。通过测试,开发者可以确保他们的RCP应用具备良好的可扩展性,同时降低维护成本。"osgi_component_test_2"提供了对这一测试过程的具体...

    java中RCP中使用JNI

    7. **总结** Java RCP结合JNI,能够充分利用Java的跨平台性和C/C++的高效性,构建功能强大且性能优异的桌面应用程序。虽然使用JNI会增加开发复杂度,但在必要时,它是连接Java世界与本地世界的桥梁,使得Java RCP...

    Eclipse RCP+Spring建胖客户端Web程序

    总结 通过以上步骤,我们成功地构建了一个基于Eclipse RCP的富客户端Web程序,并将其与Spring框架进行了有效整合。这种方式不仅能够充分发挥Spring在服务端的优势,还能充分利用Eclipse RCP在客户端方面的强大功能...

Global site tag (gtag.js) - Google Analytics