智者说,没有经过自己的思考和估量,就不能接受别人的东西。资料只能是一个参考,至于是否正确,还得自己去分辨

SpringMVC相对于Structs的几个优势:

1、springMVC安全性更高,structs2框架是类级别的拦截,每次request请求structs2都会为之创建一个action,然后将数据注入到实体been中,所以在structs2中,一个action对应一个request上下文。springMVC是方法级别的拦截,每个request对应一个方法,然后通过注解将数据注入到对应的实体中,所以在springMVC中,一个方法对应一个request上下文,粒度更小,所以说springMVC更安全

2、springMVC直接使用注解的方式,配置更加的简洁清晰,structs2将所有路径配置放在structs.xml文件中,多人开发的时候更容易产生冲突,配置相对复杂,但这也是structs2的一个优点,就是可以在这个文件中找到所有的路径。

3、springMVC的异常处理机制更加的优秀。Structs2因为在Action的execute方法声明时就抛出了Exception异常,所以我们无需再execute方法中捕捉异常,仅需在struts.xml 中配置异常处理;在springMVC中采用统一的异常处理框架,配置异常处理之后直接在执行方法中抛出对应的异常,更加的准确,显示更加友好的用户界面提示。

4、相对于Structs2,springMVC的参数传递更加方便。springMVC直接使用对应的实体去接收form提交的表单信息,而structs2要在form中指定对应的实体,否则structs无法区分form中的数据对应哪个实体

springMVC 相对于 Structs 的优势的更多相关文章

  1. Activity 与 springMvc相整合

    准备环境: springMvc框架及Activity所需要的jar: 创建spring-activity.xml文件,里面内容: <?xml version="1.0" en ...

  2. mybatis相对于ibatis的优势

    2010年,apache的Ibatis框架停止更新,并移交给了google团队,同时更名为MyBatis.从2010年后Ibatis在没更新过,彻底变成了一个孤儿框架.一个没人维护的框架注定被myba ...

  3. sonne_game网站开发03 spring-mvc+freemarker整合

    今天的任务就是在spring+mybatis+springmvc的基础上,将freemarker整合进来. freemarker是什么? freemarker是一种模板引擎.它的目的是基于模板和数据, ...

  4. spring-mvc+freemarker整合(sonne_game网站开发03)

    今天的任务就是在spring+mybatis+springmvc的基础上,将freemarker整合进来. freemarker是什么? freemarker是一种模板引擎.它的目的是基于模板和数据, ...

  5. SpringMVC一路总结(三)

    在博文<SpringMVC一路总结(一)>和<SpringMVC一路总结(二)>中,该框架的应用案例都是是基于xml的形式实现的.然而,对于大型项目而言,这种xml的配置会增加 ...

  6. SpringMVC一路总结(

    SpringMVC一路总结(三) 在博文<SpringMVC一路总结(一)>和<SpringMVC一路总结(二)>中,该框架的应用案例都是是基于xml的形式实现的.然而,对于大 ...

  7. springMVC 配置和使用

    springMVC相对于Struts2学习难度较为简单,并且更加灵活轻便. 第一步:导入jar包 spring.jar.spring-webmvc.jar.commons-logging.jar.sp ...

  8. [Swift]LeetCode870. 优势洗牌 | Advantage Shuffle

    Given two arrays A and B of equal size, the advantage of A with respect to B is the number of indice ...

  9. Leetcode 870. 优势洗牌

    870. 优势洗牌  显示英文描述 我的提交返回竞赛   用户通过次数49 用户尝试次数92 通过次数49 提交次数192 题目难度Medium 给定两个大小相等的数组 A 和 B,A 相对于 B 的 ...

随机推荐

  1. Socket原理与编程基础

    一.Socket简介 Socket是进程通讯的一种方式,即调用这个网络库的一些API函数实现分布在不同主机的相关进程之间的数据交换. 几个定义: (1)IP地址:即依照TCP/IP协议分配给本地主机的 ...

  2. 【zZ】OpenCV HOGDescriptor 参数图解

    http://blog.csdn.net/raodotcong/article/details/6239431

  3. XML语法

    xml文档内容如下:(必须全英文输入,空格都要是英文的!) 1.文档声明 2.元素 3.属性 4.注释 5.CDATA区.特殊字符 6.处理指令 <?xml version="1.0& ...

  4. viewgroup用addview添加的view不显示问题

    先看代码: public class MyviewGroup extends ViewGroup { private final Context context; private View view; ...

  5. Git相关文章

    1.Git教程 2.Git常用命令整理 3.EGit(Git Eclipse Plugin)使用

  6. Oracle数据库like和not like使用

    查询手机号注册的记录而不是邮箱 查询2开头的记录 select * from beyond_pay_offline where amount like '2%'

  7. Xamarin Android自学和实践步骤

    一.入门(已完成) 1.学习Xamarin Android项目的基本结构 2.学习界面布局的基本方式 3.学习基本编码规则 4.学习页面跳转和传值 5.学习对话框和提示信息显示方法 6.学习使用系统剪 ...

  8. CSS解决高度自适应问题

    HTML结构如下: <div id="main">     <div id="top">top</div>     < ...

  9. 2.springMVC+spring+Mybatis整合

    前面已经说了,springMVC+spring+Mybatis的整合思路了,现在就照着这个思路来做一下: 在开始之前先来看一下工程的目录结构: config这个目录底下放的都是配置文件: mybati ...

  10. lucene写索引出现锁文件的原因之一

    lucene正常情况目录下的文件 有三个文件. segments.gen segments_a08, 还有一个类似 _uw.cfs名字的东西. 当然,不一定都一样, 但肯定是这三个. 如果出现了很多文 ...