Struts vs spring mvc
1. 机制。spring mvc 的入口是servlet, 而struts是filter(这里要指出,filter和servlet是不同的。以前认为filter是servlet的一种特殊),这样就导致了二者的机制不同。
2.性能。 spring会稍微比struts快。spring
mvc 是基于方法的设计,而sturts是基于类,每次发一次请求都会实例一个 action ?,每个action都会被注入属性,
而spring基于方法,粒度更细,但要小心把握像在servlet控制数据一样。
3.参数传递。 struts是在接受参数的时候,可以用属性来接受参数,
这就说明参数是让多个方法共享的。
4.设计思想上。struts 更加符合oop的编程思想, spring就比较谨慎,在servlet上扩展。
5.intercepter的实现机制。struts有以自己的interceptor机制,spring
mvc 用的是独立的AOP方式。这样导致struts的配置文件量还是比spring
mvc大,虽然struts的配置能继承,所以我觉得论使用上来讲,spring mvc使用更加简洁。
Struts vs spring mvc的更多相关文章
- Struts和Spring MVC的比较(非原创)
文章大纲 一.Spring MVC项目例子二.Struts项目例子三.Struts和Spring MVC对比四.参考文章 一.Spring MVC项目例子 https://www.jianshu. ...
- hibernate、struts、spring mvc的作用
Hibernate工作原理及为什么要用?原理:1.读取并解析配置文件2.读取并解析映射信息,创建SessionFactory3.打开Sesssion4.创建事务Transation5.持久化操作6.提 ...
- Spring MVC 学习总结(一)——MVC概要与环境配置
一.MVC概要 MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范,用一种将业务逻辑.数据.显示分离的方法组织代码,MVC主要作用是降低了视图与业务 ...
- Spring MVC 学习总结(八)——Spring MVC概要与环境配置(IDEA+Maven+Tomcat7+JDK8、示例与视频)
一.MVC概要 MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范,用一种将业务逻辑.数据.显示分离的方法组织代码,MVC主要作用是降低了视图与业务 ...
- Spring MVC 学习总结(一)——MVC概要与环境配置 转载自【张果】博客
Spring MVC 学习总结(一)--MVC概要与环境配置 目录 一.MVC概要 二.Spring MVC介绍 三.第一个Spring MVC 项目:Hello World 3.1.通过Mave ...
- Spring MVC 学习总结(一)——MVC概要与环境配置(IDea与Eclipse示例)
一.MVC概要 MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范,用一种将业务逻辑.数据.显示分离的方法组织代码,MVC主要作用是降低了视图与业务 ...
- 0052 Spring MVC入门--环境搭建--第一个入门示例
Spring MVC是什么 Spring是一个框架,包括了MVC.IoC.AOP等等组件 MVC是一种思想,并非Spring框架独有,全称是Model.View.Controller,即模型.视图.控 ...
- 菜鸟刷面试题(四、Spring/Spring MVC/Spring Boot/Spring Cloud篇)
目录: 为什么要使用 spring? 解释一下什么是 aop? 解释一下什么是 ioc? spring 有哪些主要模块? spring 常用的注入方式有哪些? spring 中的 bean 是线程安全 ...
- Spring MVC -- MVC设计模式(演示4个基于MVC框架的案例)
对于简单的Java Web项目,我们的项目仅仅包含几个jsp页面,由于项目比较小,我们通常可以通过链接方式进行jsp页面间的跳转. 但是如果是一个中型或者大型的项目,上面那种方式就会带来许多维护困难, ...
随机推荐
- java 线程操作
停止线程 创建“停止标记”,thread.interrupt() 准确的说interrupt()方法只是“告知线程该停止了”,而线程检查到该“告知”后,再通过其他的办法停止线程. 线程调用了inter ...
- 【Java集合系列一】ArrayList解析
一.基础简介 1.ArrayList继承关系 2.底层用数组来存储数据,数据会在ArrayList创建的时候一并初始化.如果创建ArrayList的时候,没有设置容量,则会delay到第一次add数据 ...
- swift3笔记
备注:这里只是个人的观点,有的地方也是copy,多多指教,个人笔记,有侵犯你们版权的地方还望海涵!!! 个人觉得swift和OC最大的区别就是增加了许多现代化的东西,java里面的闭包,private ...
- Android开发 ---ORMLite实现数据的增删改查,单例模式,Dao栈
效果图: 项目目录截图: 1.activity_main.xml 描述: 两行显示8个按钮 <?xml version="1.0" encoding="utf-8& ...
- Core 配置文件Json
appsettings.json 文件属性 -复制到输出目录-始终复制.
- TensorFlow函数:tf.random_shuffle
tf.random_shuffle 函数 random_shuffle( value, seed=None, name=None ) 定义在:tensorflow/python/ops/random_ ...
- windows常用命令积累
命令行可以对文件进行操作,copy 路径\文件名 路径\文件名,复制文件:move 路径\文件名 路径\文件名,移动文件:del 文件名,删除文件. cd与dir命令,dir命令显示当前目录下的文件及 ...
- C#中字符串大小比较函数--CompareTo与Compare方法(需要完善补充)
字符串比较的原理是什么? 原理: 从两个字符串的第一个字符开始逐个进行比较(按字符的ASCII值进行大小比较),直到出现不同的字符或遇到‘\0’为止. 如果全部字符都相同,就认为两字符串相等,返回0: ...
- 关于anguar2微信支付问题
前端一直都是用angular2做的 但是在做支付时,很头痛 ,支付总是失败,但后没有办法只能是跳转到一个其它的页面进行支付,这也算实现了,但是觉得不好,支付完了以要重新跳回系统,怎么解决??????? ...
- Yii2项目高级模版 三个模块在同一个目录下的重定向配置
最近做项目用到的,非常好用. 修改 advanced/backend/config/main.PHP 文件如下: return [ 'homeUrl' => '/admin', 'compone ...