Struts和Spring到底啥关系?
这两个都是MVC框架,那又何来Struts+Sprint+Hibernate的组合呢?
我不是搞JAVA的,只是比较好奇,望高手用浅显易懂的语言解释一下,谢谢:)
------解决方案--------------------struts 框架 是对于WEB端的开发 是WEB端的框架 V
hibernate 框架 因为 hibernate封装了jdbc 对数据的处理更加 简洁 清晰 M
spring 是个半成品框架 集合了struts 和hibernate 相当于核心部分 C
------解决方案--------------------你可以把spring看成一个纽带,一个工厂,它把别人(struct和hibernate)一些好的东西给整合在一起!!!
------解决方案--------------------spring不是MVC框架,spring包括组件很多,其中它有自己的MVC叫springMVC,不用你如果用Struts+Spring+Hibernate,就不会用到Spring的MVC组件了
------解决方案--------------------没多大关系
------解决方案--------------------它们所处的层次不同,功能不同,组合起来能使系统层次分明。
业务逻辑层,表示层,持久层各司其职,层次清晰,业务逻辑层的修改不会影响到表示层,增加了代码的可重用性。
------解决方案--------------------顶 都说的没错
------解决方案--------------------其实struts1.x版的MVC的思想比较明显,所以一般的小项目业务逻辑不太复杂,用struts足够了。但业务逻辑复杂点的,数据模型层和控制层就应该用hibernate,spring来做,毕竟spring的AOP,控制反转等功能对业务流程的控制是很好的。struts1.2后的版本主要就是做视图层,也就是web前端,可能是它自带的一些类似html的标签,比较友好的显示。
------解决方案--------------------可以说没啥关系,只是现在都这么用,
spring是一个非常完整的框架,而且现在有越来越完整的趋势,当然,也越来越笨重。
Struts,简单点讲,就是一个Servlet上的封装,基于MVC模式,简化了WEB开发。
可以单用spring,也可以单用struts,单用Struts的人很多,单用Spring的,貌似不多,因为大家都在ssh嘛!
------解决方案--------------------struts在前端显示层,hibernate在持久层
spring的出现也就顺理成章了,在中间业务逻辑层处理很多显示层与持久层的之间的交互
比如:声明式事务,安全处理与日志
只不过现在Spring做得越来越大了,兼有了Struts与hibernate的功能,不过这些功能大家都不怎么用啦
------解决方案--------------------Spring的MVC我觉得一直都比Struts好多了。
hibernate一直用的不爽。还是直接jdbc
------解决方案--------------------你做一道菜,可以选择用脸盆和筷子来做,也可以选择炒菜锅和铲子来做.但是效率你一定知道.脸盆就是jsp,筷子就是jdbc.炒菜锅就是struts,铲子就是Spring.而炒菜这件事就是MVC.
------解决方案--------------------我觉得它们间关系不大,单用都可以解决相同问题.
h持久层封装了数据库操作之类的,简化了写sql语句,会提高了些效率吧(若数据量不很大,你是看不出来的,呵)
spring封装更"严重",这样形容可能不是很恰当,楼上的都分析的很好,这里不多说了.
------解决方案--------------------他们之间没之间联系吧,只不过struts是当前比较好的MVC框架,hibernate是很好的持久层框架,Spring可以作为一个工厂,可以很好的管理struts,hibernate,所以把这三个框架整合起来开发比较好而已。
------解决方案--------------------能这样解释MVC吗?
------解决方案--------------------Spring 的mvc用的不是很广泛,spring最大的特点就是依赖注入和面向切面。针对这两个特点应用较多的就是对对象的管理以及对事务的管理。
------解决方案--------------------两者是都实现了MVC的框架,但是并不是都要用到它的所有功能吧
一般视图层和控制层是用Struts的框架
数据访问层用Hibernate的框架
而Spring则起到一个粘合剂的作用,把Struts和Hibernate粘到一起
Spring主要是用到了它的最好的地方,那就是IOC容器和事务管理!
SSH组合主要是取三者的优点组合到一起,不好用的就干掉
每个框架都有自己的优点和缺点,
所以要
去其糟粕,取其精华!
------解决方案--------------------
------解决方案--------------------学习
------解决方案--------------------了解了解~