Java
文章平均质量分 68
理工科的杜小甫
这个作者很懒,什么都没留下…
展开
-
Java RCP
RCP,Rich Client Platform,富客户机平台 Rich Client是一个相对的概念,主要是针对时下广泛的基于WEB的应用,因为这种客户端(也即现有的各种浏览器)的运行环境没有提供一个很好的组件模型和交互模型致使这种应用的界面的同服务之间的交互变得很奇怪,每一次交互都需要重新组织出整个界面,而这个界面的组织基本在服务器端完成,也所以致使表现层的逻辑居于服务器端,所以称这种为Thi原创 2016-06-07 16:27:20 · 5067 阅读 · 0 评论 -
JAVA.SWT/JFace: SWT中的事件模型/SWT常见的事件/SWT类所代表的事件常量/按键与其对应的常量表、KeyEvent事件比较、VerifyEvent事件比较
《Eclipse SWT/JFACE 核心应用》 清华大学出版社 8 SWT中的事件模型 8.1 事件模型概述 1. 监听器(Listener) 所谓监听器,也就是接收事件发生的对象,负责处理事件到达后响应事件的代码。监听器对象是一个接口,要响应一个事件就要实现该接口中的方法。监听器类的形式为XXXListener。例如,常用的监听器有选择监听器(SelectionListener)、转载 2016-06-13 08:37:52 · 482 阅读 · 0 评论 -
JAVA.SWT/JFace: JFace篇之MVC的表格、树和列表
《Eclipse SWT/JFACE 核心应用》 清华大学出版社 8 SWT中的事件模型 8.1 事件模型概述 1. 监听器(Listener) 所谓监听器,也就是接收事件发生的对象,负责处理事件到达后响应事件的代码。监听器对象是一个接口,要响应一个事件就要实现该接口中的方法。监听器类的形式为XXXListener。例如,常用的监听器有选择监听器(SelectionListener)、转载 2016-06-13 08:39:33 · 1082 阅读 · 0 评论 -
Eclipse插件开发 实现 复制 粘贴 剪切功能
流程设计器开发(复制粘贴部分) 要在编辑器中支持复制,粘贴功能,首先,要在编辑器中选择活动节点,Eclipse工作台的菜单中复制,粘贴按钮处于激活状态,要实现这功能,我们还必须做些配置,因为编辑器没有单独的菜单栏,所有编辑器共享一个菜单栏,前面我们在定义编辑器扩展点时,有一个属性contributorClass没有指定值,它的值应该是一个实现IEditorActionBarContributor接转载 2016-06-13 08:42:04 · 1240 阅读 · 1 评论 -
SWT 应用程序 实现的Drag and Drop(DND) 和 GEF 树上元素的拖拽
Drag and drop 提供了一种在应用程序-应用程序中重新利用或者是转换数据的方法。本文讲述了如何在一个SWT应用程序中使用Drag 和 Drop机制和如何使用剪贴版转换数据。Drag and Drop Overview 举一个简单的使用Drag and Dorp的例子:从一个table中拖动一个item到另一个table。右边的table列出了可供选择的商品,左侧是我们的购物车。要购买什么转载 2016-06-13 08:44:46 · 771 阅读 · 0 评论 -
Java中instanceof
今天在学习一段代码的时候,看到以下 [java] view plaincopy if(colleague instanceof RentHouse){ // … } 其中包含的关键字instanceof自己是第一次看到,查阅有关资料后,自己知道了它的用法,现在来写一篇博客谈一下吧。 二、正文: 经过百度,我们可以知道:instanceof是Java的一个二元原创 2016-06-13 12:31:58 · 234 阅读 · 0 评论 -
JFace TreeViewer使用 及内容提供器(IStructuredContentProvider)
内容提供器(IStructuredContentProvider)TableViewer中的内容管理器比较简单,用户可以通过实现getElements返回表格的所有数据。getElements定义为“public Object[] getElements(Object inputElement)”,返回Object[]对象数组,其中数组中每一个对象代表表格的一列。当TableViewer输入数据后,转载 2016-06-13 12:38:00 · 2013 阅读 · 0 评论 -
JavaCompiler
一、使用JavaCompiler接口来编译Java源程式 使用Java API来编译Java源程式有非常多方法,目前让我们来看一种最简单的方法,通过JavaCompiler进行编译。 我们能通过ToolProvider类的静态方法getSystemJavaCompiler来得到一个JavaCompiler接口的实例。 JavaCompiler compiler = ToolProv原创 2016-06-13 15:17:52 · 6913 阅读 · 1 评论 -
插件平台的类加载机制
作为一个插件平台,除了要解决在运行时插件的交互问题外,还需要解决一个非常重要的问题——类加载。原因在于:(1)类加载机制可以绕过默认类型加载器按需自动加载每一个插件的所有类型;(2)插件具备独立性,即一个插件的运行不能对其它插件和插件内核平台产生影响,这使得类加载机制必须维护每一个插件的类型;(3)每一个插件可能会引用同一个Class的不同版本,这要求类加载机制必须能够加载多个版本的同一个类并为每一转载 2016-06-14 19:44:29 · 317 阅读 · 0 评论 -
GEF原理及实现系列(三、视图)
GEF视图通常利用Draw2d图形(IFigure)作为表现方式,用户可以通过Draw2d的功能实现图形的展示、布局及图形的编辑。1.视图的功能GEF的视图可以有很多种,GEF目前提供了图形(GraphicalViewer)和树状(TreeViewer)这两种,前者利用Draw2D图形 (IFigure)作为表现方式,多用于编辑区域,后者则多用于实现大纲展示。视图的任务同样繁重,除了模型的显示功能以翻译 2016-06-19 13:14:01 · 1068 阅读 · 0 评论 -
GEF原理及实现系列(七、模型同步)
关键字: 同步 为了保证数据和展现的同步,必须要有一种消息通知机制,当模型被修改时通知相应的视图进行更新,下面将介绍如何实现这种消息机制。1.模型同步的功能模型是GEF中实体,当模型的属性被修改后,控制器会监听到模型属性改变的事件,然后通知视图进行更新,模型和视图之间没有直接的联系,如下图:要通过事件的通知机制获得模型同步的步骤如下:(1)模型中包含注册监听器的机制,本文范例是通过Propert翻译 2016-06-19 13:19:45 · 887 阅读 · 0 评论 -
插件系统框架分析
插件系统概述 普通的系统,在编译发布之后,系统就不允许进行更改或扩充了,如果要进行某个功能的扩充,则必须要修改代码重新编译发布。使用插件可以很好地解决这个问题。 插件概念首先由开发人员编写系统框架,并预先定义好系统的扩展借口。插件由其他开发人员根据系统预定的接口编写的扩展功能,实际上就是系统的扩展功能模块。插件都是以一个独立文件的形式出现。 对于系统来说并不知道插件的具体功能,仅仅是为插件留下转载 2016-06-13 08:36:11 · 1052 阅读 · 0 评论 -
JAVA.SWT/JFace: JFace篇之文本处理
《Eclipse SWT/JFACE 核心应用》 清华大学出版社 21 文本处理JFace提供的文本处理功能非常强大,提醒在Eclipse平台中编辑器的部分。例如代码的折叠、内容提示、代码的格式化等,这些都是基于JFace的文本处理框架的。21.1 文本处理概述 JFace中有关文本处理的部分分别打包在以下两个包中: ◆ org.eclipse.jface.text_3.6.0.v201005转载 2016-06-12 22:18:44 · 2010 阅读 · 0 评论 -
Java解析XML
用Java解析XML文档,最常用的有两种方法:使用基于事件的XML简单API (Simple API for XML)称为SAX和基于树和节点的文档对象模型(Document Object Module)称为DOM。Sun公司提供了Java API for XML Parsing(JAXP)接口来使用SAX和DOM,通过JAXP,我们可以使用任何与JAXP兼容的XML解析器。 JAXP接口包含了三个翻译 2016-06-24 10:13:05 · 383 阅读 · 0 评论 -
Java解析XML汇总(DOM/SAX/JDOM/DOM4j/XPath)
目前在Java中用于解析XML的技术很多,主流的有DOM、SAX、JDOM、DOM4j,下文主要介绍这4种解析XML文档技术的使用、优缺点及性能测试。一、【基础知识——扫盲】sax、dom是两种对xml文档进行解析的方法(没有具体实现,只是接口),所以只有它们是无法解析xml文档的;jaxp只是api,它进一步封装了sax、dom两种接口,并且提供了DomcumentBuilderFactory/D翻译 2016-06-24 10:16:51 · 1378 阅读 · 0 评论 -
JDBC介绍(详细版)
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数 据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。 有了JDBC,向各种关系数据发送SQL语句就是一件很容易 的事。翻译 2016-06-24 14:10:45 · 15103 阅读 · 2 评论 -
Java开源UML建模
ArgoUML 使用java编写的开源UML产品,功能比较全。最受欢迎的UML建模工具。 Alma Alma是一个软件建模分析的工作平台,它读取几种不同的源代码,帮你设计面向对像的模型,修改结构和源代码,输出新的源代码、文档和图表。UMLet UMLet是一个开放源代码轻量级UML建模工具。UMLet能够让你快速建模,并且能够导出各种格式SVG, JPG, PDF and LaTeX-frien原创 2016-06-24 17:58:18 · 4935 阅读 · 0 评论 -
开源Java EE框架 JBoss Seam 详细介绍
摘要:JBoss Seam是“Java EE 5.0的一个轻量级的框架”。这是什么意思?难道Java EE(Enterprise Edition) 5.0本身不是一套“框架吗”?为什么在官方规范之外,还需要另外一个框架?好吧,我们就将seam看作是本应该被包括在Java EE 5.0中的一个“遗漏的框架”吧。它在Java EE 5.0框架的上层,为所有的在企业Web应用中的组件提供了一个统一的、易于翻译 2016-06-25 08:24:09 · 6810 阅读 · 0 评论 -
Java堆内存
Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在 Java 中,堆被划分成两个不同的区域:新生代 ( Young )、老年代 ( Old )。新生代 ( Young ) 又被划分为三个区域:Eden、From Survivor、To Survivor。这样划分的目的是为了使 JVM 能够更好的管理堆内存中的对象,包括内存的分配以及回收。堆的内存模型大致为:转载 2016-06-25 09:14:02 · 236 阅读 · 0 评论 -
Java并发(1)-基础概念
这是将是一系列关于Java并发基础知识的文章。事实上,主要是《实战Java高并发程序设计》的读书笔记和网络资料以及对它们的整理。相关概念 1.同步Synchronous和异步Asynchronous 同步和异步通常是用来形容一次方法调用。所谓同步,就是在发出一个”调用”时,在没有得到结果之前,该”调用”就不返回。但是一旦调用返回,就得到返回值了。换句话说,就是由”调用者”主动等待这个”调用”的结转载 2016-06-25 09:37:38 · 1367 阅读 · 0 评论 -
java的三大特性——封装
三大特性之—封装 封装从字面上来理解就是包装的意思,专业点就是信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。系统的其他对象只能通过包裹在数据外面的已经授权的操作来与这个封装的对象进行交流和交互。也就是说用户是无需知道对象内部的细节(当然也无从知道),但可以转载 2016-06-25 09:56:42 · 284 阅读 · 0 评论 -
Java堆和栈的区别
Java堆和栈的区别 栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和 multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先转载 2016-06-25 12:09:28 · 231 阅读 · 0 评论 -
一个实现了ViewPart和EditorPart的简单RCP例子
这儿结合一个实例来更进一步的了解RCP的一些原理,怎样开发rcp程序,以及在初学RCP时会遇到哪些问题。示例开发时环境:------eclipse3.2 ------jdk1.5.0_08首先说一下我理解的RCP。一个rcp就是一个应用程序,只是这个应用程序不像大多数我们常用的应用程序。现在经常用的应用程序在发布后想再扩展一些功能,就需要重新在原有代码基础上进行修改。而rcp程序有一个优点转载 2016-06-12 22:02:20 · 3182 阅读 · 0 评论 -
GEF原理及实现系列(八、选项板)
关键字: palette 选项板提供了用户选择模型元素,并提供相应的机制把模型和视图加入图形编辑器的能力。1.选项板(PaletteRoot)的功能GEF是一个图形编辑框架,它的主编辑区域是一个图形的视图(类似与JFace的Viewer),另外,用户还可以选择选项板上相应的模型,把选择的模型对应的视图加入到图形编辑区域进行编辑。在GEF中,图形编辑器实现类的getPaletteRoot方法将返回翻译 2016-06-19 13:22:28 · 1396 阅读 · 0 评论