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框架进行集成。
解决方案 »
- mysql数据库问题
- 做系统日志导出给EXCEL表格赋值时报错
- 写了一个JQuery拖拽条的插件,类似的网上很多,有点缺陷拿出来和大家分享,也让高手给指点下
- HttpURLConnection获取页面内容的用处
- 请问各位专家!我想实现禁止用户访问这个功能,该如何实现!
- 怎么学习java
- ejb是以线程还是以进程运行的???
- Struts <html:link>标签问题
- struts 框架使用,出现的事务控制问题,请高手做答
- jbuilder的安装问题
- 使用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,绝对没得说。