好好生活,努力工作,天天向上!

BlogJava 首页 新随笔 联系 聚合 管理
  46 Posts :: 1 Stories :: 178 Comments :: 0 Trackbacks
      工作这两年一直在从事Eclipse 插件开发的工作,想学习一下Web开发,所以这段时间一直在寻找心目中理想的Java Web开发框架,目前有众多的Java Web 应用框架可供我们选择,这也让我(们)欢喜让我忧:欢喜的是可以从众多的框架中选择自己最喜欢的,忧的是不知道你目前正在努力研究的这个框架会不会在下个项目中使用!

   我使用过JSP、JSF、Structs、Spring MVC、GWT、Scala Lift、Eclipse RAP、Wicket,除了Eclipse RAP外其他的没有展开很深入的了解,只是用这些不同的框架做同一件事然后进行比较,得出下面的结论(个人观点,仅供参考):

   首先单纯使用JSP来开发项目需要考虑的东西太多,开发效率不高。 既然有更圆的免费轮子,干嘛不用?

   JSF的开发理念是组件开发,但组件开发没有一个好用的IDE开发工具怎么行,OperaMasks Studio目前觉得还不是非常的好用,我用OperaMasks框架做了一个简单的页面(也就是使用了它的TabLayout布局而已,外加一点文字),居然需要下载差不多800kb大小的文件,而且开发的过程中非常的小心,千万不要出差错,如果对JSF原理不是很熟悉的话,挑错的过程很痛苦。很难对JSF组件进行个性化。虽然说JSF的Sun定义的JEE标准,但有时"标准"这东西不是灵丹妙药,比如中国有这么多的股市专家,在网络、电视上指点股市,然而还是有很多听信了专家的话的股民也没有赚到多少钱。

  
Structs 的架构设计的比较简单,使用基于控制器导航和页面导航,也很容易扩展,而且与FreeMarker结合可以很容易的自定义标签库,非常的方便,不过Structs 1.X配置的步骤太繁琐了,需要定义对HTTP请求和响应的映射和所有的ActionForm对象等。Structs 2.X好像有所改观,但是目前为止Structs 2.x的参考文档好像不多,应用也不广.

   Spring MVC的架构设计的非常优秀,可以和其他框架比如JSP、JSTl、FreeMarker、Tiles方便的进行集成,提供了强大的依赖注入功能,不过要想使用它需要先配置一大堆的XML文件,这我可不喜欢,而且对AJAX支持不够,这让它损失了很多用户。

   GWT全名叫Google Web Toolkit,从名字上可以看出它目前定位为工具集,不是框架,单纯使用GWT开发Web应用程序好像不是很顺手。 
   

    Lift是基于Scala的一种Web开发框架,它的假想竞争对手是基于Groovy的Grails,不过目前来说还不是很成熟,知名度也不高,不过参考Scala的发展趋势,Lift应该很有发展的潜力,值得关注。
  
  
其实我觉得Eclipse RAP 框架非常的不错,是基于Qooxdoo的AJAX框架,从架构到实现,都非常的优秀,支持OSGI,和插件管理,可以像开发RCP一样开发Web程序,从RCP迁移到RAP也不需要费很大周折,不过目前RAP面对的一个问题是系统的运行速度(如果摩尔定律仍然有效并且也能用于网络宽带的发展速度上的话,那么RAP绝对是一门值得投资的技术)。国外也有公司已经开发出了RAP的商业产品,我试用了下,非常的惊艳非常的棒.
  

  现在轮到Wicket了,Wicket 是 Sun公司的Swing UI小组开发出的一种构建和测试动态 Web 页面的简化框架,是一种开源、轻量、基于组件的框架,只使用Java和HTML代码,构建在Servlet API 之上,Wicket通过基于HTML的模板来界定HTML 页面设计人员和 Java 开发人员之间的角色界线.模板可使用任何的HTML设计工具生成.,也就是说Wicket可以让你有更多的精力放在应用程序的业务逻辑的实现上.如果你有SWT/Swing的开发经验,对其他的Web框架知道的比较少又像向Web开发这方面发展的话,那么Wicket一定非常的适合你。而且Wicket的性能还不错.提到Wicket就不得不提一下 Tapestry,这两个框架很多地方相似,你可以在网上看到Tapestry PK Wicket 的帖子,不过有人说"Wicket是重构后的Tapestry".现在你知道该选谁了吧.当然Wicket也有缺点,要掌握Wicket需要了解Java,有面向对象编程思想的话掌握Wicket很容易

   好了,我已经决定了,要开始研究Wicket了,嗯,还是研究一下它的源代码先.
 
  
   欢迎大家一起讨论,说出你心中最理想的Web 框架

posted on 2009-09-03 12:00 VWPOLO 阅读(3677) 评论(17)  编辑  收藏 所属分类: Web 开发

Feedback

# re: Java Web框架,我选Wicket 2009-09-03 13:05 sex
你肯定会后悔的...  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-03 13:13 VWPOLO
@sex
为什么,能说说原因吗?  回复  更多评论
  

# re: Java Web框架,我选Wicket[未登录] 2009-09-03 13:28 jim
Wicket是重构后的Tapestry?你是说Tapestry4吧,试试Tapestry5吧,自从用了Tapestry3后就没换过,其他的框架也不再关心和研究了。  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-03 18:41 heyang
自己选就选自己最熟悉的。  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-03 18:49 5452
不是谁比谁更好的问题,合适的就是最好的,这么比较意义不是很大。  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-03 23:31 leekiang
问题是大多数人不明白怎么做、做成什么样才是合适的  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-04 09:15 VWPOLO
@heyang
Wicket比较符合我的习惯!  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-04 21:24 说的发生
对struts2的评价不公平,struts2 前身是webwork,其实文档还是很多的,它很社区比任何一个mvc都应该大  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-05 12:24 honeyjava
很傻很天真,估计你连Ajax是什么都还没弄明白  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-07 19:06 VWPOLO
@honeyjava
你是想为OperaMasks辩解吧,OperaMasks我觉得封装的过头了,把简单的事情搞的太复杂,
Struct2.X的文挡真的比较少,从网上下载的电子书大部分是1.x的  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-08 00:00 星辰
那只能说楼主你不会找东西,struts2.x的文档什么的还是挺多的  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-09-08 00:01 星辰
还好我也学过几个框架,要不真的被楼主误导了...  回复  更多评论
  

# re: Java Web框架,我选Wicket[未登录] 2009-09-09 07:55 vwpolo
@星辰
我都喜欢到讯雷的官方网战上去下载东西,还有www.qupan.com上找  回复  更多评论
  

# re: Java Web框架,我选Wicket[未登录] 2009-09-09 07:57 vwpolo
@星辰
这个和个人学习的背景有关系,标题都说了"我选',呵呵,我可没让大家选  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-11-19 17:22 w
@vwpolo

struts都写错了,楼主啊。  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-11-20 17:14 bsspirit
我也用过不少的框架
JSP、JSF(SUN_RI, ICEFace)、Struts1, Struts2、Wicket,
ExtJs, JMaki

相比之下,感觉Wicket用起来算是比较舒服的。
像Struts1.x,2.x,JSF,都用标签控件,一大堆一大堆的又臭又长,而且写一个页面要切换好几种视图,真是浪费精力!
ExtJs,JMaki,基于Ajax控件,虽然对js不要求精通,但是用好也不是太容易,而且对一般的开发人员,学习成本比较高。

建议没用过wicket的,可以感受一下。

只有你试过了,才有资格说,哪个好哪个不好。
  回复  更多评论
  

# re: Java Web框架,我选Wicket 2009-11-21 18:16 VWPOLO
@bsspirit
呵呵,我现在正在使用Wicket开发一个电子商务网站,感觉还比较良好  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: