Struts只是一个MVC框架(Framework),用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。 Spring是一个轻型容器(light-weight container),其核心是Bean工厂(Bean Factory),用以构造我们所需要的M(Model)。在此基础之上,Spring提供了AOP(Aspect-Oriented Programming, 面向层面的编程)的实现,用它来提供非管理环境下申明方式的事务、安全等服务;对Bean工厂的扩展ApplicationContext更加方便我们实现J2EE的应用;DAO/ORM的实现方便我们进行数据库的开发;Web MVC和Spring Web提供了Java Web应用的框架或与其他流行的Web框架进行集成。
解决方案 »
- hibernate+struts无法获取session???新手,第一次发帖,求细致、求温柔?
- weblogic部署错误
- 如何让ServerSocket线程和Jsp页面交互
- prepareCall
- vc++ 第一次调用 xfire webservice 错误 第二次正常
- 高手!99吧!javatag
- 关于客户端页面从数据库中读取大量图片的问题
- xstl如何将中文正确显示?????
- struts config 问题
- spring管理的对象与自己反射的对象问题
- 使用struts后出现“HTTP Status 400 - Invalid path ”错误,大虾来帮帮我!!!在线给分
- BS与CS的联系与区别
现在大体说一下:
structs:和ww2等一样,都是典型的mvc结构框架,至于mvc是什么,地球人都知道,如果你不知道就google吧:),structs偏重于表现层,它自己起一个控制器的作用即controller,它可以良好的把表现层与业务层分离开来。spring:说白了就是一个大杂烩,提供了目前各种流行框架的集成,经典的有对hibernate的集成,此外,如mail,axis...各种都有。另外,它比较经典的就是IOC与AOP的功能,楼上已经有人说了,如果你不知道,去google。此外,它还提供了Spring MVC,它基于webflow,至于用法,去查它的文档。structs的actionform是公认的败笔,我用得痛苦得不得了。
另外,你说的重复提交,那是浏览器的问题,和structs无关。看你如何指挥浏览器了,如果你用redirect,就没有重复提交的问题,因为浏览器已经重定向了。但是你用forward,那在你刷新的时候就是重复提交。Spring比较偏重于业务层,在页面上一般是不显示出来的。当然,如果你用Spring的MVC例外。
如果楼主讨论的是Spring MVC和Structs的话,那我告诉你,Spring MVC绝对要比structs优秀,但是实现起来比structs复杂,structs占在人多力量大,成熟,文档多。
如果你真要用的话,还是建议你使用webwork,拦截器功能强大,使用ognl,绝对没得说。
另外,你说的重复提交,那是浏览器的问题,和structs无关。看你如何指挥浏览器了,如果你用redirect,就没有重复提交的问题,因为浏览器已经重定向了。但是你用forward,那在你刷新的时候就是重复提交。 Spring比较偏重于业务层,在页面上一般是不显示出来的。当然,如果你用Spring的MVC例外。
如果楼主讨论的是Spring MVC和Structs的话,那我告诉你,Spring MVC绝对要比structs优秀,但是实现起来比structs复杂,structs占在人多力量大,成熟,文档多。
如果你真要用的话,还是建议你使用webwork,拦截器功能强大,使用ognl,绝对没得说。