`
manyinjin
  • 浏览: 92243 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

是重复发明轮子还是a new big thing? easyjweb VS struts2

阅读更多
    有些日子没有上CSDN了,今天一上,却险些被一个题目吓得昏了过去。
引用
我们还需要struts2吗? EasyJWeb vs Struts2
这么有煽动性的标题还是很唬人的。我一向自诩对于web框架还是略知一二的,怎么突然冒出了个可以PK掉struts2的东东而我事前一点风声都没有听到呢?
    难道是A big thing悄然诞生了吗?
    迫不及待的下载了easyjweb的code,快速的扫了一下,有上了官方网站仔细的溜达了好久,看了一些demo。呵呵,说实话,
引用
easyjweb中的ioc容器、惯例代替配置、快速代码生成以及模板技术EasyJWeb是在综合struts1.x、webwork、Tapestry、springmvc、rails等框架发展而来http://www.blogjava.net/easyjf/archive/2007/12/26/170480.html
,这些多少是有些吹嘘的成份了。
   
引用
EasyJWeb中大量使用了惯例代替配置的机制,把应用程序按模块进行划分
这个貌似和Django有点类似,但是给予java来做这个,还是需要一些功力的。
    呵呵,值得一提的是Easyjweb项目的东西还是一应俱全的,wiki,JIRA,SVN,Maven,这些开源利器都用上了,不知道有没有建立一个CI系统来作daily build和integration。
    遗憾的是code check out 完成后我试图install它的第一遍努力就失败了。错误是:maven-surefire-plugin的版本不对,呵呵,只能手动加上对这个插件的配置才可以继续。但是,已经30分钟过去了,一个mvn install还没有执行完毕。貌似是这个repository:http://local.easyjf.com/有问题的说。
    从pom来看,easyjweb的项目组织还是比较乱的,貌似是写pom的人对于maven的使用还不是很熟练。看来Easyjweb要达到它宣传中说的能力,需要提高的地方不止一处阿。
    看来这个Big thing还是很little的,要想取代struts2,光嘴上说说是不行的。还是看行动吧。什么时候出现了killer级的easyjweb应用再来谈PK掉Struts2才不晚,呵呵。。。。。。
    今天已经很晚了,我的mvn install命令还没有结束,只有在明天早上在mvn eclipse:eclipse了,机器我决定今天晚上不关了。希望明天早上的时候终于能把这个Big thing install完毕,然后可以仔细看看它的源码吧,希望能够从源码中发现这个big thing 能够有个美好的将来,呵呵。。。。。。

    没睡觉前,看了一眼,呵呵,这个install了1个半小时的东西居然失败了,汗!!!!mvn install -e 再来过吧,看看什么问题再说
   
引用
两个框架都抛弃了Struts1.x中那种需要借助ActionFrom来处理数据的机制,而采用更为先进的注入方式。EasyJWeb中的WebForm中提供了一个toPo方法,用来处理数据注入。
  比如,为了在Action中注入Person对象:
  EasyJWeb的Action代码中直接使用toPo方法手动注入,如:
public class PersonAction extends AbstractPageCmdAction {
    private PersonService service;
    public void setService(PersonService service)
    {
        this.service=service;
    }
    public void save(WebForm form) {
        Person person=form.toPo(Person.class);
        this.service.save(person);
        page("list");
    }
}

可是struts2中却可以利用OGNL实现的更优雅一些:
@Result(type=Redirect.class, location="/...")
public class PersonAction extends ActionSupport {
    private PersonService service;
    private person
    public void setService(PersonService service)
    {
        this.service=service;
    }
    public void execute() {
        this.service.save(person);
        return SUCCESS;
    }
}

不但WebForm的影子不见了,来Action和对应的jsp之间的跳转都可以利用Annotation的方式申明,貌似这个更无配置一点,呵呵
分享到:
评论
40 楼 huangking 2008-11-03  
EJF M3就已经用过了
感觉还不错  其实我们大家是不是更应该团结一点呢?
国人做开源大家都知道很难的
支持EJF
39 楼 casephoen 2008-08-06  
<p>CommonTemplate文档感觉比较详细,看起来很专业阿 </p>
<p>EasyJWeb个人看了一下,觉得很不错,作者很用心了,看得出他们对很多框架确实深入研究过,只是文档确实太太太少了 </p>
<p> </p>
<p>国内开源框架为什么起不来?个人认为有以下几个原因 </p>
<p>1。没赞助没气氛支持,导致单打独斗居多,可持续性发展不强----毕竟人家也要养家糊口哪有那么空闲功夫 </p>
<p>2。一些技术比较好的清高,颇有点古代“文”人相轻的感觉,发现bug讥笑口吻居多,泼冷水 </p>
<p>3。技术厉害的时间做长了后大多转管理或创业</p>
<p>其它的想不到了,呵呵 </p>
<p> </p>
<p>想起一次用grails的richui里面的日历组件,死德国鬼子居然不支持中文本地化,后来网上搜了一个中国人开发的js日历组件,功能好强大阿,感动极了 </p>
<p> </p>
<p>真的很希望国内开源框架越来越多,以后中国人都使用自己开发的框架。各位大拿加油!</p>
38 楼 HenryYu 2008-06-19  
Struts2不咋地,重造一个轮子又何难?!
37 楼 gigix 2008-01-25  
manyinjin 写道
public class PersonAction extends AbstractPageCmdAction {
    private PersonService service;
    public void setService(PersonService service)
    {
        this.service=service;
    }
    public void save(WebForm form) {
        Person person=form.toPo(Person.class);
        this.service.save(person);
        page("list");
    }
}

这个……它还是不可测试啊……得把WebForm给mock掉才行……
Struts2从WebWork2学来的用OGNL的那种做法,貌似三四年前就早已有了……如果说刻意不抄袭别人的做法,可能应该比别人做得更好才是吧?
或者,国内的开源领袖们根本就没看出这两种做法有什么区别?
36 楼 zingers 2008-01-25  
要说开源纯粹是不为名不为利这么说过于天真
对于别人的努力可以欣赏
对于别人的言论可以宽容
35 楼 xcly 2008-01-25  
也不能说楼主在拨冷水,毕竟一个新的东西出来,就吹得那么大,还是有些贻笑大方的,不过,在这里,看到国内的IT人士都为开源而这么努力,令人欣慰。  最期待的是更多的人参与进去,让这个产品更加的杰出。
34 楼 zhoulf 2008-01-22  
不知道STRUTS2有什么好的!~
33 楼 xly_971223 2008-01-20  
人家做个框架 你就拼命的破冷水 什么意思啊 你牛你做一个出来看看
不可否认国内的水平是比国外的有些差距 但是像你这样一味的打压就能超过别人?
easyjweb我没有用过 好与不好不敢下结论 但是就是这种为开源贡献的精神就值得我们每个人去学习,人家不求名不求利 为了方便大家 提高业界的开发效率做一点力所能及的工作 你犯得着这样说吗
希望国内能够出更多的开源框架 像 springside easyjweb等等
32 楼 flash 2008-01-06  
ct确实很不错,其中的属性外套与wicket甚像,可惜不知道性能如何,也没有成功的案例。。。商用的话不知道会不会有问题。。
31 楼 javatar 2008-01-02  
差沙 写道

其实国内的高人很多,从零做起的框架也很多。我就很佩服javatar ,他的ct做的很棒,个人认为超出了fm,这样的东西大家一起把他发扬光大才是。


非常感谢你的支持^_^
也希望有兴趣的朋友一起开发
30 楼 chris_lve 2008-01-02  
精神可嘉!!
29 楼 番茄有益 2008-01-01  
哈,CSDN是一个不错的社区,人多啊,最起码你知道大家在说什么 ,呵呵,看看文章么,又不是盲从,大家都有自己的判断了,兼听则明嘛,说实话,我个人不觉得各种WEB框架有什么特别明显的差异,所谓思路的差别,看你怎么看了 ,况且WEB框架也不算是什么重要问题 。
28 楼 xyz20003 2007-12-31  
不过说句实话,csdn上的广告实在是太扎眼了,为什么总感觉国内在宣传开源方面这么过火?jdon的宣传,openmask的宣传,现在又是easyjf的宣传,让人不太舒服,甚至对作者都有了些许的偏见。

记得上小学写自我评语的时候,也要先写优点,后写缺点,一定要有自我批评的部分。就算照顾一下大众的情绪,也稍微谦虚谦虚如何?请见谅,在下不是逼作者示弱,而是在国内这种氛围下,如果不想被炮轰,就要圆滑一些呢。
27 楼 agile_boy 2007-12-31  
不管发明轮子,还是new big,如果能在国内这样的浮躁气氛中,做的既实用又有特色,为你们而骄傲,虽然我是力挺国外比较出名的开源,那也没法子啊,国内实在是没有那个开源在这样的贫瘠的土壤中成长
一句题外话,掌握一个度,控制一种平衡,对发展很重要。
26 楼 差沙 2007-12-30  
ej的工作做得很努力了,其实能这么勤奋也很不容易了,做开源的不容易。楼主估计也是全才,大家要共同努力,要是感觉别人做的不好不要第一时间说人家不专业,而是第一时间想想自己能为国人的东西做些什么,提些什么建议。国人做开源本来就不容易,拿出来还要让别人埋汰。。。。

但是,也能理解,楼主肯定是看了这个标题有点窝火。CSDN的标题党太强悍了,每次去都会让我会心一笑,也不错,呵呵。。。

其实国内的高人很多,从零做起的框架也很多。我就很佩服javatar ,他的ct做的很棒,个人认为超出了fm,这样的东西大家一起把他发扬光大才是。

另外,感觉ss和ej也不好放在一起比较。毕竟模式上是不一样的路线,ss的路线是帮助大家尽快上手主流框架。
25 楼 eserver220 2007-12-30  
maoweiwer 写道
没有这样一个地方吧???????
  我讲的是dorado5,他们的第一版我就注意到了。 时间长了,当时

好像与Jbuilder集成。因不是开源,所以没有仔细研究。
 
  最近,他们的demo越做越光鲜了。我无意推介产品,只是觉得小公司要

推出一个通用开发工具,确实比较艰苦。要脚踏实地,容得下各种批评。

再说,楼主提出的问题,也不无道理。这与安装软件的快慢有何关系。

做软件的都知道,有时一个小问题折腾几天都可能。
24 楼 maoweiwer 2007-12-29  
没有这样一个地方吧???????
23 楼 eserver220 2007-12-29  
  http://demo.easyjf.com/easyjweb 这个demo好像不行吗?

   国内还是有比较好的Struts项目的,可能大家没注意到,看看

这个demo。
    
     http://61.151.239.187/dorado5/main.jsp
 
  
22 楼 javatar 2007-12-29  
另外, CSDN的标题党一直是个问题...
21 楼 javatar 2007-12-29  
我是CommonTemplate(http://www.commontemplate.org)的作者, 刚看到这篇文章, 没想到会是commontemplate.jar更新版本引起, 真的很抱歉.

因为和easyjweb集成的原因, 我也看过一遍easyjweb, 虽然有些设计我也不太赞同, 但他们有自己的设计哲学, 每个人思考的角度不同, 能在自己的设计方法上一直走到现在, 真的很不容易易, 而且人的思想是进步的, 积跬步以至远, 我相信坚持就是胜利.

相关推荐

    wincvs、ajaxanywhere+struts示例+easyjweb指南

    【标题】"wincvs、ajaxanywhere+struts示例+easyjweb指南"涉及的是几个关键的IT技术领域,主要包括版本控制系统Wincvs、Web开发框架Struts与AjaxAnywhere的集成应用以及轻量级Java Web开发框架EasyJWeb的使用教程。...

    Easyjweb 1.2.2

    2. 简化开发流程:Easyjweb的核心目标是提高开发效率,它通过自动代码生成工具(如easyjweb-generator-1.2.jar中的工具)减少了重复的编码工作。例如,它可以自动生成DAO、Service和Action等代码,让开发者可以更快...

    EasyJWeb实用开发指南——开始EasyJWeb

    【EasyJWeb实用开发指南——开始EasyJWeb】 EasyJWeb是一款由中国开源团队EasyJF开发的Java Web应用程序框架,旨在简化和提高开发效率。它基于请求转发模型,采用MVC(Model-View-Controller)架构设计,使得开发者...

    EasyJWeb开发指南

    EasyJWeb是一款专为中国开发者打造的企业级Java Web应用程序开发框架,它结合了多种流行开源Web框架如Rails、Struts、JSF、Tapestry等的优点,旨在提供高效、易用的MVC(Model-View-Controller)架构。作为一个中文...

    EasyJWEB2.0

    **EasyJWEB 2.0:企业级Java Web开发的利器** EasyJWeb 2.0 是一个专门针对企业级Java Web应用设计的快速开发框架,...通过深入学习和熟练运用EasyJWeb 2.0,开发者可以提升开发效率,减少重复劳动,专注于业务创新。

    easyjweb1.2

    框架设计构思来源于国内众多项目实践,框架的设计及实现借鉴当前主要流行的开源Web框架,如Rails、Struts、JSF、Tapestry等,吸取其优点及精华,是一个完全由来自的中国开源爱好者开发,文档及注释全部为中文的开源...

    EasyJWeb框架0.7.0

    EasyJWeb框架0.7.0是一个专为Java开发者设计的轻量级Web应用框架,旨在简化开发过程,提高开发效率。这个版本的框架在早期的版本基础上进行了优化和改进,提供了一系列的功能来支持Web应用程序的快速开发。 首先,`...

    EasyJWeb源码构建指南

    【EasyJWeb源码构建指南】是一篇关于如何构建和设置EasyJWeb开源项目的文章。EasyJWeb采用了Subversion(SVN)作为版本控制工具,而Maven作为项目管理工具,确保开发流程的标准化和高效性。 首先,你需要获取源代码...

    easyjweb-2.0快速开发

    easyjweb-2.0 java 快速开发 easyjweb-2.0 java 快速开发 easyjweb-2.0 java 快速开发

    easyjweb-1.1

    《深入解析EasyJWeb 1.1:轻量级J2EE框架的精髓》 EasyJWeb是一个在Java EE开发领域备受关注的轻量级框架,它的核心目标是简化企业级应用的构建过程,提高开发效率。这个框架以其小巧、灵活、易用的特点,为开发者...

    easyjweb初试--简单的say hello示例

    在IT行业中,EasyJWeb是一个轻量级的Java Web应用框架,主要用来简化Web应用程序的开发。本示例将引导我们逐步了解如何使用EasyJWeb创建一个简单的"Say Hello"应用,这通常是我们初次接触任何Web框架时都会做的经典...

    EasyJWeb入门手册

    可以让你easyjweb快速入门使用 EasyJWeb简介 EasyJWeb是基于java技术,能实现企业级Java Web应用程序快速开发的MVC框架。框架设计构思来源于国内众多项目实践,框架的设计及实现借鉴当前主要流行的开源Web框架...

    EasyJWeb简易教程pdf版

    - **设计理念**:EasyJWeb的设计理念汲取了Rails、Struts、JSF、Tapestry等流行框架的优点,并结合了中国开发者的需求和习惯,致力于打造一个易于使用、高效且灵活的Java Web开发框架。 - **目标用户**:面向具有...

    EasyJWeb-Velocity脚本简明教程

    【EasyJWeb与Velocity简介】 EasyJWeb是一个Java Web开发框架,它强调的是将业务逻辑与页面展示分离,以提高项目的可维护性和开发效率。在EasyJWeb中,选择Velocity作为视图技术,主要是因为Velocity在可维护性、...

    Easyjweb项目实例

    【Easyjweb项目实例】是针对Java Web开发框架Easyjweb的一个实践教程,它提供了丰富的学习资源和源代码,帮助开发者深入理解并掌握Easyjweb的使用。Easyjweb是一款基于Java的轻量级Web应用框架,设计目标是简化开发...

    基于EasyJWeb框架和MVC模式的Web应用

    ### 基于EasyJWeb框架和MVC模式的Web应用 #### 一、MVC设计模式概述 MVC(Model-View-Controller)是一种广泛应用于软件开发的设计模式,最初由Trygve Reenskaug提出,并在Smalltalk-80环境中得到了应用。这种模式...

Global site tag (gtag.js) - Google Analytics