- 浏览: 187599 次
- 性别:
- 来自: 杭州
最新评论
-
qja:
这个classpathContainersLast 是什么意思 ...
maven-eclipse-plugin 使用示例 -
litianqwe:
楼主 我是看着你的视频学习gwt的,觉得它好生硬,我有个问题想 ...
GWT开发游戏尝试--植物大战僵尸 -
litianqwe:
楼主 我现在有个问题 那我现在用GXT如果想对某一行增加一个双 ...
2.Listener 监听器系统 -
lxzh504:
简单明了,写的非常好。
scalable io in java学习 -
ocaicai:
很有研究能力,思维清晰!
GWT中对不同浏览器兼容性实现原理
文章列表
应用场景
优势
性能提升(实例)
序列化与反序列化原理
改造GWT,解耦Servlet,使之成为一个普通的SpringBean
在MAVEN中集成GWT
外部Servlet容器启动,并远程调试
整合WEBX3
我在浪曦发布过视频,地址http://bbs.langsin.com/forum-158-1.html
其实后面还有2集的,因为某些原因没有发出来,我没有好的网络空间,部分视频放到google docs里面了,需要的可以去http://docs.google.com/leaf?id=0BxyxxqVGdyChYzJhMTU4NTktNzllYi00N2I2LThlNTYtY2E0ZjFmMDhlZjdi&hl=zh_CN 下载
GXT中的Listener采用观察者模式
因此在顶层就有一个接口com.extjs.gxt.ui.client.event.Observable,代表一个观察者
展示一下部分代码:
public interface Observable {
public void addListener(EventType eventType, Listener<? extends BaseEvent> listener);
public boolean fireEvent(EventType eventType, BaseEvent be);
public Lis ...
1.1 BaseEvent
- 博客分类:
- GXT
前面讲了EventType做为GXT中基本的事件。
下面介绍如何对这个事件进行传递。
一个EventType仅仅只能表示这个事件的种类,附带的信息太少了,我们要对它扩展。
这个就是BaseEvent,GXT中对EventType进行封装的最基本的类型,其他更多更复杂的事件都是继承此类的。
BaseEvent类中有3个属性,分别是:
1. boolean cancelled 是否取消该事件
2. Object source 事件的源头
3. EventType type 事件类型
要说GXT里面的事件Event,就必须先了解一下GWT提供的事件系统
GWT中基础的事件类是:com.google.gwt.user.client.Event
在这里GWT给我们提供了浏览器原生的20种左右的事件,每一个事件都用一个Int整数类型表示
如:
/**
* Fired when the user clicks on an element.
*/
public static final int ONCLICK = 0x00001;
GWT只提供了原生的事件,实际GXT中需要很多的自定义事件,GXT是如何扩展事件系统的呢?
GXT中创建了一个:co ...
先列个目录
1.Event 事件系统
2.Listener 监听器系统
3.DOM 操作辅助类
4.UI 界面设计层次
采用第三方框架google guice
使用教程参见:http://ajava.org/course/open/17683.html
在GWT中使用guice的依赖注入,还需要GIN模块来支持
未完待续。。。
修改eclipse.ini文件
原出错的配制如下:
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
556M
-framework
plugins\org.eclipse.osgi_3.4.0.v20080605-1900.jar
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms556m
-Xmx912m
正确的配制方法应该是:
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
556M
-framework
plu ...
前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。
总结如下:
Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分。
DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,比如使用Hibernate进行数据访问时,DataSource实际为Se ...
WebOS中也有类似注册表的概念,说白了就是全局变量
这里我采用了GXT中的Registry
通过Registry.register(String id,Object object); 来注册
通过Registry.unregister(String id) 来反注册
通过Registry.get(String id) 来获得值
从本质上来说,就是一个Map键值映射
这种做法一个很大的缺陷就是,如何保证我这个id的唯一性,万一别人已经注册了,我再去注册,将会导致之前注册的内容别覆盖!
为了避免这种情况,我们可以约定采用这种方法:
静态字符串BASE将具有唯一性,JAVA的包名加类名 不可 ...
WebOS中引入了‘命令’,类似于Windows操作系统的'运行'
如何向系统注册自己的命令呢,
先了解一下这个接口
package com.single.os.core.client;
public interface CommandExecute {
void execute();
}
此接口只有一个方法,当你的命令被调用时,便会执行这个方法。
使用以下代码即可注册命令
CommandCollection.add("yourCommand",new CommandExecute(){
public void execute() ...
在WebOS中开发应用程序
认识抽象类Application
操作系统接受实现了Application的类,
通过调用install()方法来安装应用程序
调用uninstall()方法来卸载应用程序
package com.single.os.core.client;
public abstract class Application {
protected boolean ...
这个项目基于GXT的WebDesktop,是一个模拟Windows系统的web应用。
原始的GXT版本连接在此:http://www.extjs.com/examples/desktop.html
我这个项目也是基于GXT的WebDesktop,实在是因为本人美工方面不行,特别是对CSS很不熟悉,只好借用别人的系统做为基础。
WebDesktop仅仅提供了仿桌面的一个效果,而我这个项目主要是对WebOS的内部架构进行设计,使得该系统做为一个基础平台,开发者能够非常方便的在这个系统上开发自己的应用程序。
该项目DEMO地址:http://web977712.host66.chinajsp.n ...
原文:http://xuhengfei.com/notebook/2010/02/java-singleton/
在单例模式中有一种延时实例化方法,
当调用get方法获取单例时,判断是否已经实例化,如果没有,则创建该实例并返回。如果有直接返回。
在这个过程中如果考虑多线程并发问题,我们需要用双重锁定来保证该实例的单一性。
public class Singleton {
private Singleton (){
}
private static Singleton main;
/**
* 双重锁定
* @return
*/
publi ...