美文网首页
springMVC和Struts2的区别

springMVC和Struts2的区别

作者: 我在写简书 | 来源:发表于2017-09-20 21:54 被阅读58次

SpringMVC和Struts2的区别_腾讯视频

一、背景介绍

MVC模式:

MVC 是 Model-View-Control 的简称,即模型-视图-控制器。它是一个存在于服务器表达层的模型,它将应用分开,改变应用之间的高度耦合。

MVC模式结构:

MVC 模式将应用分为模型、视图和控制器三个部分:

1. 视图:数据的展现。

2. 模型:应用对象。

3. 控制器:逻辑处理、控制实体数据在视图上展示、调用模型处理业务请求。

MVC的优点:

1.耦合性低

2.重用性高

3.部署快

4.生命周期成本低

5.可维护性高

MVC的缺点:

1.增加了系统和实现的复杂型

2.视图对数据的访问效率低

3.内部原理比较复杂

二、知识剖析

spring MVC

Spring MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring MVC也是要简化我们日常Web开发的。

struts2

Struts2是流行和成熟的基于MVC设计模式的Web应用程序框架。 Struts2不只是Struts1下一个版本,它是一个完全重写的Struts架构。

三、常见问题以及解决方法

spring MVC和struts2的区别

1.由于Struts2需要针对每个request进行封装,把request,session等servlet生命周期的变量封装成一个一个Map,供给每个Action使用,并保证线程安全,所以在原则上,是比较耗费内存的。

2. 拦截器实现机制上,Struts2有以自己的interceptor机制,SpringMVC用的是独立的AOP方式,这样导致Struts2的配置文件量还是比SpringMVC大。

3.Spring MVC和Spring是无缝的。从这个项目的管理和安全上也比Struts2高

(这是从简单的demo上简单的了解的,还有其他的区别下面这边博客里面写的很清楚)

http://blog.csdn.net/chenleixing/article/details/44570681

为什么更倾向于使用Spring MVC

1.安全:最近struts2爆出了高危的漏洞

2.效率:springMVC的开发效率和性能都高于struts2

3.个人觉得比SpringMVC麻烦

四、代码实战

spring-struts2-mybatis-demo

五、更多讨论

q:什么情况用Struts比用springmvc好呢?

a:个人觉得什么情况下用springMVC都比struts好(见识比较短浅)

q:Struts 不能用el嵌套 把jsp里不可以写入el吗?

a:struts2的页面是用的一个叫做OGNL表达式来写的,但是我们也测试了加入jstl的jar包,在jsp中也可以用el表达式。

q:struts比起spring有什么新特性?

a:新特性的话,springMVC出的比struts2晚,不存在新特性。

q:struts2能不能用tiles框架?

a:上面提到也可以用到el表达式,也就可以用tiles框架。

相关文章

网友评论

      本文标题:springMVC和Struts2的区别

      本文链接:https://www.haomeiwen.com/subject/qpxasxtx.html