大家好。目前本人,用SSH大概几个月的样子,但是基本上,我不太喜欢SSH,
我感觉hibernate是一个不错的东西。
而spring和struts 好象现在都提供了MVC 工作流,如果这二个框架在一起,这是不是重复设计。
另外,是不是只有国内才会把这3个框架一起用,国外也这样吗,国外用什么框架?
目前对于SSH的认识:
缺点:
配制麻烦。
N多异常,N多调试
因JAR包版本引起的N多错误。
表现层开发效率低,这一点可能是自己功底还不够。
hibernate 听别人说好象在性能方面有欠缺。优点:
SSH可配制,应对不断变化的需求,
hibernate,使对持久层的开发效率提高了
spring 面向接口编程,一个类的初始化过程是通过配制给定的,也可以应对复杂变化的需求。我在google code上搜到了以下几个(1-5)框架:1.
j-hi JAVA WEB应用软件快速开发平台
平台包括如下几个部分: 
1、J-HI平台集成环境:J-HI团队开发了一个集成开发环境J-HI Studio,在此集成开发环境之上,开发人员能够快速搭建自己的开发环境,创建自己的模型,快速生成代码。
2、核心框架:平台为Java代码与js代码之间提供了一套完整的面向对象的核心框架支撑系统,可以认为这是一个抽象层,无论是在页面表现上,还是在 CURD的任意一层,平台均提供了最大限度的抽象。用以保证平台本身的可扩展性、稳定性及灵活性。J-HI平台中提供了大量的API(java与js), 为用户在开发过程中随需调用,从而进一步加快开发速度,保证代码质量。
3、业务平台功能:包括权限管理、组织结构、枚举管理、国际化管理、消息管理等。
4、工作流:包括工作流引擎及流程编辑器等。
2.
rapid-framework
java web快速开发脚手架
rapid-framework是一个以spring为核心的项目脚手架(或者称为胶水框架),框架将各个零散的框架(struts,strust2,springmvc,hibernate,ibatis,spring_jdbc,flex)搭建好,并内置一个代码生成器,辅助项目开发,可以生成java的hibernat model,dao,manager,struts+struts2 action类,可以生成jsp的增删改查及列表页面3.
nutz
make you happy with Java
对于 Java 程序员来说,除 SSH 之外,的另一个选择:
同传统的 SSH 相比,它具备如下特点:
轻 -- 当前最新版,整个 jar 文件共 950k
薄 -- 针对 JDBC 的薄封装,无缓存
全 -- 提供了 Dao (ORM, SQL 管理), Ioc, Aop, Mvc, Json解析 等必要功能
活 -- 各个部分可以独立使用,比如在 Spring 里采用 Nutz.Dao ,又比如在 Nutz.Ioc 里使用 Hibernate 等
整 -- 它所有功能均不依赖第三方 jar 文件。
4.
fireflow
A java based workflow suite,include engine and designer .
一个java工作流套件,包含引擎、设计器等等5.
Jibu 是一个简洁,高效,易于理解的 Java 应用开发模板。它以 Google Guice 为核心,对如何开发一个基于数据库的、标准的业务模块进行了约定,
所有遵循约定的模块都可以很方便的进行组装。
Jibu 与主流开源框架的不同在于,它坚持“约定优于配置”,不会有很复杂的配置文件,不会试图涵盖大多数需求,也不会有太多的封装,4个字:“够用就行“。
所以它的体积至少比其它框架小一个数量级。6.
Efs Frame 框架特点
1、 完善的Web表现层开发包:为企业Web表现层开发人员提供的一套完整、高效、美观的B/S结构设计表现层解决方案,简单易学。
2、 完善的组件开发包:为企业组件开发人员提供的一套完整、稳定、高效的B/S结构设计业务逻辑层解决方案。
3、 分层结构设计:Efs框架严格按照MVC模式设计开发。
4、 完善的基础数据库设计: 
完整的事务、事件管理、用户、单位、角色、权限管理设计,能快速帮助企业在不同的项目中快速完成用户、单位、角色、权限的分配,迅速投入到项目本身的业务系统开发中。7.Apusic OperaMasks
开箱即用:使用Apusic OperaMasks进行Web开发,开发人员只需掌握基础的J2EE知识;
标准JSF引擎:JSF是已经得到业界认同的一种主流组件技术,能够很容易适应各种未来需求的变化,其精髓就是“与表现层无关的表现层技术”;
IoVC技术: OperaMasks独创的视图反转技术,令展现层完全从后台逻辑中解放出来,控制层具有对展现层完全的控制能力。使得用OperaMasks编写的应用具有更清晰的分层职责分离,更高的可维护性,更轻便快捷的编程体验;
ELite动态语言: 内嵌灵活强大的ELite动态语言引擎。可以在统一EL表达式中使用ELite语言特性,或使用ELite语言编写服务器端脚本;
原生Ajax支持: 从容器级别对Ajax予以支持,对OperaMsks用户来说,要使应用具备Ajax特性,付出的成本是零;
Rich Component: 除了支持标准的JSF组件,并为其添加Ajax特性外,OperaMasks还提供给用户一套丰富的扩展Rich Components,用户可以用各种组件来组织数据、展现数据、编辑数据;
跨浏览器支持: OperaMasks SDK完全兼容业界主流浏览器,如IE、Firefox等;
开源社区: 所有源码甚至是开发过程自身,全部通过OperaMasks.org开放,代表了J2EE社区开放和敏捷的力量;注:6,7不是在googlecode 上搜到的。上面搜到的几个框架,我只对Jibu的示例程序下载下来,看了一下,感觉界面很棒,但内部流程不太了解。其它的还没有研究,但是我感觉都比SSH更加实用。更附合国内的需求。欢迎拍砖,及客观讨论。

解决方案 »

  1.   

    用spring其实主要不是因为他的mvc框架,而是aop ioc/di  用struts主要用途才是mvc!
      

  2.   

    各有利弊,整合起来的SSH是经过前人总结出来的,必定有其存在价值~
      

  3.   

    你应该读读它们的源码 
    你会大有感受的
    spring 有她的mvc ioc aop orm等等,我们大多数情况只用它的ioc和aop
    struts是mvc
    hibernate当然是orm持久化了
    spring可以很好的管理struts和hibernate
    当然用什么 ,得看整个团队对那些技术框架熟悉程度,而定的
      

  4.   

    俺比较喜欢servlet+jsp+jdbc。重要的是思想,而不是框架
      

  5.   

    看来SSH还是主流.
    国外也这样吗,国外用什么框架?
      

  6.   

    看来你项目还是做的太少了 SSH里面 如果只能选其二
    我会毫不犹豫的 放弃hibernate 不是什么项目都适合用SSH  
      

  7.   

    没办法,现在外面企业基本都要求SSH,本人正在学呢···
      

  8.   

    貌似springmvc的配置比ssh复杂多了