来者有分,full-stack架构讨论

little06 2009-05-04 05:19:51
加精
最近在做架构方面的选型工作,我自己用的比较多的是ssh架构
现在市面上流行的full-stack有appfuse,springside,openmasks,grails.......等

有没有人对他们进行一些功能对比,使用对比,技术对比,或者使用心得之类的

请提供一下
...全文
954 131 打赏 收藏 转发到动态 举报
写回复
用AI写文章
131 条回复
切换为时间正序
请发表友善的回复…
发表回复
so_good2010 2010-03-07
  • 打赏
  • 举报
回复
太深了,看不懂~学习中。。。
hyl124816 2009-11-10
  • 打赏
  • 举报
回复
额。。。。 我ssh还没用多么好呢 LZ牛人
jie_why 2009-06-07
  • 打赏
  • 举报
回复
说的不错啊!!!!!!!
freshman2005 2009-05-17
  • 打赏
  • 举报
回复
初学者, 来学习下!
thereisawill 2009-05-17
  • 打赏
  • 举报
回复
接分,结婚
zenithVan 2009-05-16
  • 打赏
  • 举报
回复
分啊 急需
  • 打赏
  • 举报
回复
我们用的是 JBoss Seam,相对于 SSH 更胜一筹。

下面是我对一些开源框架的观点:

Spring
优点:IoC、AOP 容器,集大成者,集众框架,可谓包罗万象,应有尽有,学习资料丰富
缺点:极其繁杂的配置文件,原来有个 Spring 的项目,配置文件就有 8000 多行,可以把人看晕掉,极其不喜欢!
大事小事都得弄个接口,感觉是为了接口而接口,估计有好多人是先写类再写接口的吧?

Hibernate
优点:ORM 的领头羊,ORM 事实上的标准,功能完善,学习资料丰富
缺点:在效率上有些问题,加之含有许多的 hbm 配置文件强行与代码分隔。

Struts 1.x
优点:老牌 MVC 框架,MVC 事实上的标准
缺点:说实在的我感觉除了比 Servlet 少在 web.xml 中配置一些东西、自动封装 FormBean 之外,没感觉到有什么好处,
这个框架最不好用的就是它的标签,除了 html 标签好用之外,其他的标签极其不好用,特别是 logic:iterator 远远没有
c:forEach 用起来舒服。

Struts 2.x/WebWork 没用过。

JBoss Seam
优点:
完全打破三层体系架构,借助于 JSF 采用两层结构,页面层和组件层,Seam 是按照业务逻辑来分层,而不是按照架构来分层。
Seam 的最低版本是在 JDK 1.5 之上设计的,使用了很多 JDK 1.5 的新特性,大量地使用 Annotation,这种方式完全可以取
代复杂的配置文件。就算是其中的日志组件也是采用变参实现的,这样我们就不用在页面上写 if(log.isDebugEnabled()) 了。
采用 xhtml 的 JSF 页面,将 JSF 原本的配置分散到每个页面的 .page.xml 文件中,可以在里面写些:进入页面时需要执行
的方法、有哪些参数需要传递的、页面如何导航等等。
Seam 拥有完善权限模型,权限不仅可以在页面中表现,也可以通过 Annotation 在方法上限制该方法的执行权限。
Seam 中的 Backing Bean 可以是普通的 Java Bean,也可以是 Session Bean,这样就可以让 Seam 工程不仅能运行在 EJB
容器中,也可以运行在 Servlet 容器中。
Seam 中扩充了 Servlet 中的请求范围,增加了 Conversation、Process,而不是 Servlet 中的 application, session,
request, page 四种。最常用的是 Conversation 这表示一个业务逻辑的作用范围,比 Session 小,比 Request 大。这种
扩充完全是为了一整步骤的业务逻辑而定制的。
想想看使用 Seam 可以使用 Seam Gen 或者是 JBoss Tools 的 Eclipse 插件产生某个表的增删改查分页功能,如果不涉
及业务逻辑,而且使用默认的模板可以一行代码不用写,快速开发,诱人吧 ^_^

缺点:
学习难度相对于 SSH 大很多,学习资料相对较少,其中所使用的 JSF 不用说了,相对于 Hibernate,Seam 所使用的 JPA
也是需要一定阶段地学习才能灵活使用的。其中还有多如牛毛的 Annotation、双向注入、WebBeans 等概念也是需要一定时
间来掌握的。
Seam 中所使用的页面组件框架,比如 Ajax4JSF, RichFaces 等等也是需要一定时间来掌握的。

smmi 2009-05-13
  • 打赏
  • 举报
回复
不懂,来学习
dehexiao 2009-05-11
  • 打赏
  • 举报
回复
我来占沙发学习一下。
帮你顶起来。
hujun_zero 2009-05-11
  • 打赏
  • 举报
回复
顶,学习了~~
还有opencms不知道算不算是一个框架呢 
t421307162 2009-05-10
  • 打赏
  • 举报
回复
学习
javacaspnet 2009-05-08
  • 打赏
  • 举报
回复
绑定,接分
abcdefg406505181 2009-05-08
  • 打赏
  • 举报
回复
元芳,这里的水很深啊!
gyouyang 2009-05-08
  • 打赏
  • 举报
回复
板凳
PENYY 2009-05-07
  • 打赏
  • 举报
回复
  Grails是一套用于快速Web应用开发的开源框架,它基于Groovy编程语言,并构建于Spring、Hibernate和其它标准Java框架之上,从而为大家带来一套能实现超高生产力的一站式框架。
  Ruby on Rails开创了将一门强大的编程语言和一个坚持己见、提倡用通情达理的默认设置代替复杂配置的框架进行创造性结合的先河。然而,还有许多组织并没有做好从Java的安全保护伞下走出的准备,也没有打算放弃他们目前在Java上的投入。而Grails的出现,使得在一个以Java为中心的环境中实现同等生产力的想法成为可能。
  
Grails的插件系统

  grails的插件系统也是其亮点之一。首先,和rails,django等web框架类似,基于微内核的思想,插件(可重用模块)是框架的一等公民。grails除了核心模块以外的功能几乎都是通过插件方式实现的。实际上,一个grails插件和一个grails应用基本是完全一样的,同样可以使用grails run-app命令来运行。区别仅在于一个插件的根目录下需要提供一个fooplugin.groovy文件,提供插件的一些描述信息。
  grails插件基本可以做任何事情
j9dai 2009-05-07
  • 打赏
  • 举报
回复
up
mike_24 2009-05-07
  • 打赏
  • 举报
回复
不知道,只知道ssh架构比较经典
lg891121 2009-05-07
  • 打赏
  • 举报
回复
学习……
冰岛男孩 2009-05-07
  • 打赏
  • 举报
回复
学习……
yygis 2009-05-07
  • 打赏
  • 举报
回复
学习学习
加载更多回复(109)

50,556

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧