`
wsc830719
  • 浏览: 166079 次
  • 性别: Icon_minigender_1
  • 来自: 唐山
社区版块
存档分类
最新评论

netbeans下gwt(gwt4nb插件)开发环境

阅读更多

netbeans提供了与eclipse下同等的gwt插件,并且风格与netbeans web(如jsp+servlet)一致。

当前版本即netbeans6.8更新中心带的gwt插件是2.6.14版本。

该版本提供了最基本的功能,但是不建议安装这个,可能很多人不知道,其实去它的插件网页下载最新的容易获得最新的特性。这点已经体现在好几个插件上了。比如ireport插件,按照更新里的安装,就不如去ireport官网下的那个功能全。再比如UML插件 官网给的插件明显比开发的那个官网网站的插件旧很多。

 

现在讨论的是GWT,它的插件开发网址是 http://gwt4nb.dev.java.net/

可以到这个页面下载最新的2.6.20版本,这个版本相比2.6.14多了很多功能:

1 多了3个向导,14版只有建立RPC向导,而20版本,还有:

     创建 GWT常量;创建GWT模块;创建UiBinder 三个向导。

这个UiBinder 是GWT2里的新特性,它可以通过xml文件来定义UI的布局以及样式。使得GWT不必太依赖可视化的设计工具了,它的编写和HTML语法类似,确切的说就是和faceslets学的,就是靠标签来体现的。

 

2 布局及样式xml文件,增加了标签自动补全以及智能提示功能。这个14版本是没有的。

 

有了GWT2以及这个20版本的插件,基本上做GWT开发应该是又容易了很多,在netbeans下做开发的朋友不妨去试试了。

当然eclipse下有GWT designer可视化设计工具,这是netbans比不了的,不过这个插件是收费的。而Google官方推荐的那个插件就是和netbeans类似的。不过由于GWT2的到来,使得布局就像HTML那样容易,就使得可视化开发不必须了。你要是熟悉手写html的话,就马上就可以上手了。

 

如果你稍微深入或了解下GWT,就会想知道GWT的外观扩展。这里节约你的时间,我给你介绍下:

 

mygwt已经停止了,它以前排名第一,不过早不存在了,库也很老,它合并入ext了,ext收费了,GWT-ext,呢也差不多,因为ext收费了,这两个我们一般就不考虑了。

而ext-gwt呢也停止了,开始了一个smartgwt的完全的东西,ext-gwt主页上推荐到smartgwt,smartgwt由smartclient合成而来。这个是目前最强大的库,发展也很快,gwt出了2.0,它也更新到2.0.因此这个是首选了了。

它分免费版和企业版,企业版肯定是要收费的。

另外一个就是GWT的孵化器了,组件很少,是GWT的组件的前沿使用场所,通过的就加入正式库,我看了,基本没使用价值。

 

千万不要认为netbeans耗费内存了,gwt编译都比他多的多,看看调试模式下的内存占用吧:

我的netbeans从早上跑到现在了,本来就是完整功能版本还安装了ireport报表插件 gwt插件 ,而我做的测试,gwt+smartgwt整合,就只是一个按钮ImgButton ,看看调试运行的内存占用吧:

 把netbeans的内存压到100M了。真是奇怪,gwt编译及运行居然这么高消耗。比EJB还要高耗呀。

 

 

 我感觉GWT,犹如EJB般昂贵,甚至有过之而不及。它的编译尤其要是使用第三方类库的情况下,需要几百M的内存。此外,编译时间很长。

因此,就这两点来讲,大大阻碍了它的流行。

 另外,既然是富客户应用,那么和后台的交互通常会相当多,除非只是为了在客户端展示效果,带有很少的交互数据,但是这种情况,使用JQuery extjs之类的不是更好吗?何必使用这么大的一个家伙呢。

 

因此,这里有个更彻底的ajax框架 ——echo,现在到3.0beta8了,加入了客户端js。应该来说做的更彻底了,直接在服务端保存用户数据,而只把用户数据发到客户端,而客户端用对应的js组件去展示数据。 每个服务端的Java组件都有一个客户端的js组件与之对应。理解这点很重要,因为要想用好它,做自己的组件相当的需要。

 

他俩的区别吧,可以说正好相反,一般的区别网上有,我就不废话了:

1 首先echo是由servlet生成一个Java类,当然他们是单例的,这个Java类保存在服务器上,并通过固定的接口方法把js文件发给请求的客户端,这样就建立了对应关系。只有客户端请求到某些类时,相应的js才会发给客户端。

2 有人说,echo耗费服务器,说是靠服务器生成swing图形,然后响应客户端,这是大错特错的,它只是保存一个javabeans对象,然后与客户端的js组件对应,js组件通过事件代码,把一些值发到服务端,这些值保存在用户上下文中,而对应的组件只有一份。如果使用消息队列,那么客户端会周期地询问服务端,默认是500毫秒。因此,只要js组件产生事件,而这个事件中改变的属性值做了服务器端的关联,那么就需要与服务器端连接,所有才耗费服务器的。

因此,可以多安装几个服务器,比如tomcat就应该行了,因为它需要的连接太频繁。

之所以说它比GWT耗费资源,我觉得2点: 1 连接频繁  2  session(用户上下文:app实例及相关实例)需要保存很多用户数据。当然按照它的说法,session不活动时(钝化)会把用户数据移到硬盘上把内存留出来给其他用户使用。

所以,我们不能说它是因为使用了类似swing的组件才耗费服务器的,因为它只有一份,任何动态网站都需要服务器储存数据,echo肯定是多了东西,但是这不是决定因素。

3 客户端的js框架和服务端的Java组件 API是一样的。因此js是面向对象的语法,如果做对比的话,有点像javafx、flex等的形式。服务端的组件和js组件一样用。因此,如果注重性能,可以多做客户端的组件,而少做关联,即少与服务器通信。

上面提到,js组件和服务端Java组件API是一模一样的,因此,每个动作都要与服务器端通信的。正是这样,echo的组件都是具备必须的事件。  可以看下API,Java组件都没有鼠标的移动事件,否则的话,自己想象下就有意思了。

要想做到这些,你想要继承现有组件(这里是指客户端js组件),添加你感兴趣的事件,不需要和服务器关联的就不关联,只在客户端运行。比如客户端js验证,这个你总需要吧。

总结:echo组件都不应该拿来就用,一般最好的实践就是扩展他们。echo的架构思想也是围绕这些展开的。

 

先到这,我会专门开个文章介绍下echo3.以及如何才能在netbeans下做相应的开发。

 

 

0
0
分享到:
评论

相关推荐

    NetBeans下的Struts2.0插件

    NetBeans是一个功能丰富的集成开发环境(IDE),特别适合Java开发。将Struts2.0与NetBeans结合,可以提升开发者的工作效率,使得开发Struts2应用更加便捷。 标题中的"NetBeans下的Struts2.0插件"指的是专门为...

    Netbeans6.5 二次开发Liferay插件

    4. **插件开发流程**:首先,开发者需要设置Liferay SDK,然后在NetBeans中创建一个新的Liferay项目。接着,选择合适的项目类型(如Portlet或Service Builder),配置相应的Liferay版本和部署目标。编写代码后,可以...

    NetBeans7.0.1下开发Android必须的插件

    2011年6月更新的NetBeans7.0.1开发Android的插件(nbandroid 1.7),补救了以往的插件中在编辑xml文件时没有代码提示的缺憾,使程序员在NetBeans下开发Android软件也能像在Eclipse那样得心应手,方便好用,现在分享...

    Netbeans Struts2插件

    nbstruts2support,当前的netbeans即使是6.5版本也只是支持struts1,该插件可以使其支持struts2,下载该两个插件,打开“工具”-->“插件”选择已下载,将插件导入,打上勾,安装即可

    NetBeans中搭建C开发环境

    2. NetBeans C/C++ Pack:NetBeans C/C++ Pack 是 NetBeans 的一个插件,提供了 C 和 C++ 语言的开发支持。可以从官方网站下载 NetBeans C/C++ Pack 的安装包。 3. MinGW:MinGW 是一个开源的 C/C++ 编译器,适用于 ...

    scala netbeans 插件(3)

    scala netbeans 插件(3)scala netbeans 插件(3)scala netbeans 插件(3)scala netbeans 插件(3)scala netbeans 插件(3)

    Netbeans开发音乐播放插件

    - **安装插件开发工具包(Platform SDK)**:在NetBeans官网下载并安装,它包含开发插件所需的库和工具。 - **创建新项目**:在NetBeans中选择“New Project”,然后选择“Java with Ant > NetBeans Module”创建一...

    NetBeans开发Android插件

    netBeans开发ANdroid插件 NetBeans添加插件后 在配置中 添加 名字随便起 http://kenai.com/downloads/nbandroid/updates.xml 添加 重启后能用

    可用于NetBeans6.1 6.0修改启动参数的插件

    总的来说,"br-com-claudius-netbeans-jvmsettings.nbm"插件是NetBeans开发环境的一个实用增强工具,它简化了对JVM启动参数的调整过程,从而帮助用户根据自身需求优化IDE的运行效率。对于那些经常面临内存限制问题或...

    Netbeans对Codeigniter框架支持的插件

    总的来说,NetBeans的Codeigniter插件旨在使开发者在使用这款PHP框架时拥有更好的开发环境,提升开发质量和效率。通过安装和利用这些插件,你可以更加专注于你的项目,而不是被琐碎的代码细节所困扰。同时,保持插件...

    NetBeans 下struts2 的插件

    总的来说,NetBeans下的Struts2插件为Java Web开发者提供了一个高效、易用的开发工具,使得基于Struts2的应用开发变得更加得心应手。无论是新手还是经验丰富的开发者,都可以从中受益,快速构建出高质量的Web应用...

    开发Netbeans插件之音乐播放器.

    在本文中,我们将深入探讨如何开发一个基于NetBeans平台的音乐播放器插件。NetBeans是一个流行的开源集成开发环境(IDE),它支持多种编程语言,包括Java、C++和JavaScript等。开发NetBeans插件允许我们扩展其功能,...

    javafx2.0在netbeans插件

    NetBeans IDE 是一个流行的开源集成开发环境(IDE),支持多种编程语言,包括 Java。`javafx-2_0-beta-netbeans-windows-i586.zip` 文件是一个专门为 NetBeans IDE 配置的 JavaFX 2.0 插件,专为 Windows 的 i586...

    scala netbeans 插件(2)

    scala netbeans 插件(2)scala netbeans 插件(2)scala netbeans 插件(2)

    构建NetBeans的JSP开发环境

    ### 构建NetBeans的JSP开发环境 #### 一、环境搭建与配置 ##### 1. 开发环境概述 为了构建一个适用于JSP开发的环境,我们需要准备以下软件及版本: - **JDK**: JDK1.6 Update 3 - **IDE**: NetBeans 5.5.1 - **...

    如何在NetBeans IDE 5.5.1上安装WSIT 插件

    NetBeans IDE 5.5.1 是一个广泛使用的开源集成开发环境,主要用于Java应用程序的开发。WSIT(Web Services Interoperability Technology)是SUN Microsystems(现在已被Oracle收购)推出的一套工具集,用于增强Java...

    Andriod for NetBeans 插件

    Android for NetBeans 插件是专门为开发者设计的一款集成开发环境(IDE)扩展,它使得开发者能够在NetBeans平台上进行Android应用的开发。这个插件的出现,弥补了NetBeans IDE在原生支持Android开发上的不足,使得...

    Android学习笔记之开发环境搭建(Eclipse和NetBeans)

    对于NetBeans的Android开发环境搭建,虽然NetBeans主要用于Java和Web开发,但通过插件也可支持Android。不过,Eclipse更常用,因此NetBeans的配置在此不再详述。如果你需要在NetBeans中开发Android,建议查找专门...

    Netbeans下配置struts2插件

    本篇文章将详细介绍如何在NetBeans环境下配置Struts2插件,以便更好地利用该框架进行开发。 首先,我们需要理解Struts2的核心概念。Struts2框架基于Action和Result,通过DispatcherServlet进行请求分发。Action类...

Global site tag (gtag.js) - Google Analytics