论坛首页 Java企业应用论坛

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

浏览 21385 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-12-27  
    有些日子没有上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的方式申明,貌似这个更无配置一点,呵呵
   发表时间:2007-12-27  
后记:
    终于找到问题所在了:http://dl.easyjweb.com/maven2这个repository上根本就没有commontemplate.0.7.8.jar这个artifact存在,只能跑到http://code.google.com/p/commontemplate/downloads/list去下载,然后手动安装,
mvn install:install-file -DgroupId=org.commontemplate -DartifactId=commontemplate -Dversion=0.7.9 -Dpackaging=jar -Dfile=/home/manyinjin/commontemplate-0.7.9.jar

并修改ext的pom文件,这个折腾啊!!!!!!
难道Easyjweb这帮人发布了源代码之后就不测试一下吗?就这个样子还取代struts2,呵呵,牛皮吹得太大了吧!!!!!!!
0 请登录后投票
   发表时间:2007-12-28  
国内的人东西做得不咋地,倒是可以把牛吹上天。jdon framework如是,easyjweb如是。easyjweb里面封装的东东,还没有SS2好呢。可惜SS发展得比较慢了。
1 请登录后投票
   发表时间:2007-12-28  
我还是停留在webwork2.2,基本目前足够用了。

等待下一个killer,明显struts2不是,easyjweb按楼主的说法,应该也不是。
0 请登录后投票
   发表时间:2007-12-28  
那篇文章是一位专职广告软文写手写的,别当真
0 请登录后投票
   发表时间:2007-12-28  
EasyJWeb 不予评论. 但想对重复发明轮子发表点看法

重复发明轮子对编程能力的提高和对某一同类轮子的理解是没有一种学习方法可比的. 所以说,这只是个时间问题,如果有时间,你最好去重复发明轮子. 这样,当你真正要造轮子时就简单的多了.否则,你永远都是在使用轮子

补充一句
说难听点 ,不重复发明轮子就没有进步,对于框架建立者而言,他肯定会说,不要重复发明这种轮子,我这个轮子是最好的,但事实并非如此,没有银弹,也就没有真正的银轮子
0 请登录后投票
   发表时间:2007-12-28  
jjx 写道

EasyJWeb 不予评论. 但想对重复发明轮子发表点看法

重复发明轮子对编程能力的提高和对某一同类轮子的理解是没有一种学习方法可比的. 所以说,这只是个时间问题,如果有时间,你最好去重复发明轮子. 这样,当你真正要造轮子时就简单的多了.否则,你永远都是在使用轮子

补充一句
说难听点 ,不重复发明轮子就没有进步,对于框架建立者而言,他肯定会说,不要重复发明这种轮子,我这个轮子是最好的,但事实并非如此,没有银弹,也就没有真正的银轮子


这个观点我绝对绝对的赞同!
0 请登录后投票
   发表时间:2007-12-28  
说句话吧,真想早点看到国产的框架,也不是仅仅是中和下别人的框架,这没用,对程序来说我是个菜鸟,可是别人的框架都是遇到某种特定问题提出来的 ,那必然在某方面有很强的优势,不要试图去取代,知道自己的东西强在哪就成。要是觉得有不足的地方,应该积极参与进去,每个人出一份力,也许会得到意想不到的效果。
0 请登录后投票
   发表时间:2007-12-28  
居然有人上csdn那种大忽悠网站...
0 请登录后投票
   发表时间:2007-12-28  
惊鸿逝水 写道
jjx 写道

EasyJWeb 不予评论. 但想对重复发明轮子发表点看法

重复发明轮子对编程能力的提高和对某一同类轮子的理解是没有一种学习方法可比的. 所以说,这只是个时间问题,如果有时间,你最好去重复发明轮子. 这样,当你真正要造轮子时就简单的多了.否则,你永远都是在使用轮子

补充一句
说难听点 ,不重复发明轮子就没有进步,对于框架建立者而言,他肯定会说,不要重复发明这种轮子,我这个轮子是最好的,但事实并非如此,没有银弹,也就没有真正的银轮子


这个观点我绝对绝对的赞同!

关于重复发明轮子的问题,我是这样理解的:
    在你的time和budget都允许的情况下是可以的,但是必须要有自己的创新,如果只是简单的模仿,那么实际上是没有任何意义的。提高编程能力有很多种方式,不一定非要把别人走过的路重新来过才证明你能够走这条路。如果你想证明自己,可以参与现有轮子的改进工作。简单的重复对于“进步”而言是没有太大意义的,特别是在开源领域。
    说点题外话吧
    老外的东西之所以能够这样,首先是有一个open的思想和拿来主义的思想。而在中国,很多时候,看到别人的东西好,首先的想法是把它复制一份,做成自己的。。。。。。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics