springMVC 相对于 Structs 的优势
智者说,没有经过自己的思考和估量,就不能接受别人的东西。资料只能是一个参考,至于是否正确,还得自己去分辨
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 的优势的更多相关文章
- Activity 与 springMvc相整合
准备环境: springMvc框架及Activity所需要的jar: 创建spring-activity.xml文件,里面内容: <?xml version="1.0" en ...
- mybatis相对于ibatis的优势
2010年,apache的Ibatis框架停止更新,并移交给了google团队,同时更名为MyBatis.从2010年后Ibatis在没更新过,彻底变成了一个孤儿框架.一个没人维护的框架注定被myba ...
- sonne_game网站开发03 spring-mvc+freemarker整合
今天的任务就是在spring+mybatis+springmvc的基础上,将freemarker整合进来. freemarker是什么? freemarker是一种模板引擎.它的目的是基于模板和数据, ...
- spring-mvc+freemarker整合(sonne_game网站开发03)
今天的任务就是在spring+mybatis+springmvc的基础上,将freemarker整合进来. freemarker是什么? freemarker是一种模板引擎.它的目的是基于模板和数据, ...
- SpringMVC一路总结(三)
在博文<SpringMVC一路总结(一)>和<SpringMVC一路总结(二)>中,该框架的应用案例都是是基于xml的形式实现的.然而,对于大型项目而言,这种xml的配置会增加 ...
- SpringMVC一路总结(
SpringMVC一路总结(三) 在博文<SpringMVC一路总结(一)>和<SpringMVC一路总结(二)>中,该框架的应用案例都是是基于xml的形式实现的.然而,对于大 ...
- springMVC 配置和使用
springMVC相对于Struts2学习难度较为简单,并且更加灵活轻便. 第一步:导入jar包 spring.jar.spring-webmvc.jar.commons-logging.jar.sp ...
- [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 ...
- Leetcode 870. 优势洗牌
870. 优势洗牌 显示英文描述 我的提交返回竞赛 用户通过次数49 用户尝试次数92 通过次数49 提交次数192 题目难度Medium 给定两个大小相等的数组 A 和 B,A 相对于 B 的 ...
随机推荐
- 10个顶级的CSS UI开源框架
随着CSS3和HTML5的流行,我们的WEB页面不仅需要更人性化的设计理念,而且需要更酷的页面特效和用户体验.作为开发者,我们需要了解一些宝贵的CSS UI开源框架资源,它们可以帮助我们更快更好地实现 ...
- css响应有media,js响应有这种
比如,我不想在移动端执行某js特效可以参考(function(doc, win) { var screenWidth = 0, size = 'M', root = doc.documentEleme ...
- linux小程序--cmatrix
wget http://www.asty.org/cmatrix/dist/cmatrix-1.2a.tar.gz .2a.tar.gz cd cmatrix-.2a yum install ncur ...
- gulp 学习笔记 (初识)
根据极客学院入门视频整理 一.gulp介绍,主要提到了gulp是基于流式来管理运行的,目前完全搞不懂这一套专业术语. 二.gulp的安装使用. 1.首先需要在全局环境下安装gulp npm insta ...
- C++ 里大写TRUE和小写true区别
1.C++里大写TRUE和小写true区别 true是bool型的: TRUE是int型的,VC里这个是ms自己定义的: C++规定不允许只通过返回类型不同区别两个函数 2.MFC中的”false“和 ...
- 高仿淘宝和聚美优品商城详情页实现《IT蓝豹》
高仿淘宝和聚美优品商城详情页实现 android-vertical-slide-view高仿淘宝和聚美优品商城详情页实现,在商品详情页,向上拖动时,可以加载下一页. 使用ViewDragHelper, ...
- Ubuntu 14.04 英文系统 安装中文搜狗输入法
ubuntu默认的输入法是ibus框架,而搜狗输入法是基于fcitx的框架,因此需要先安装fcitx框架. STEP1: 在Ubuntu Software Center 搜索fcitx,安装fcitx ...
- Ajax完整结构和删除
1.ajax完整结构 注意:(1)最后一个没有"," (2)ajax对网速要求高,最好有各种提示和使用按钮(可使其失效,防止重复加载) $.ajax({ url: "aj ...
- 在CentOS上搭建Storm集群
Here's a summary of the steps for setting up a Storm cluster: Set up a Zookeeper clusterInstall depe ...
- Cannot find or open the PDB file问题的解决
'testcv.exe' (Win32): Loaded 'D:\Documents\Visual Studio 2013\Projects\testcv\x64\Debug\testcv.exe'. ...