简单的SpringMVC的测试项目----跟struts2对比着学习
一,搭建SpringMVC项目
1,主配置文件-----地基
because,不像struts2是个独立的框架,可以脱离Spring单独使用。需要先添加Spring支持,是Spring框架组成的一部分,相当于Spring的一个扩展
so,t添加Spring核心类库、数据库支持、web支持
在WEB-INF下添加applicationContext.xml主配置文件 tx,p,context,aop,把主配置文件配置在WEB-INF下就不用配置参数,只需要配一个监听器即可
在web.xml中配置监听器:ContextLoaderListener
struts2是MVC框架的组成部分,那么C指的是控制器,控制器的作用是(action):接收请求,调用业务逻辑,然后再返回相应的视图;视图作用(Jsp):显示结果,接收输入和用户交互;模型:处理数据,执行业务逻辑,数据访问层,业务逻辑层,实体类
二者对比:
struts2的核心控制器是个过滤器:StrutsPrepareAndExecuteFilter
SpringMVC的核心控制器是个Servlet:DispatcherServlet
不需要自己再另外导入类库了,都在spring的web类库里了;框架自动提供的核心控制器:自动的拦截和处理所有请求(StrutsPrepareAndExcuteFilter),再进一步决定调用哪个Action(业务控制器)
伪静态:
所有的请求都由SpringMVC处理,看上去在浏览器url地址栏中输入的是.html,实际上是调用的SpringMVC的控制器,其实是动态,后缀匹配,根据特定的请求来拦截,只要想调用SpringMVC的控制器,后缀就得写.html
- 在项目上添加Spring支持,注意一定要导入Spring的Web类库applicationContext.xml
- 在web.xml中配置Spring的监听器
- 在web.xml中配置SpringMVC的核心控制器——DispatcherServlet 在url中设置伪静态
- 在WEB-INF目录下创建SpringMVC的配置文件[Servlet-Name]-servlet.xml 核心控制器在初始化的时候会加载这个配置文件
- 编写业务控制器,通过注解进行配置
- 在SprigMVC中配置组件扫描和视图解析器
简单的SpringMVC的测试项目----跟struts2对比着学习的更多相关文章
- 创建一个可用的简单的SpringMVC项目,图文并茂
转载麻烦注明下来源:http://www.cnblogs.com/silentdoer/articles/7134332.html,谢谢. 最近在自学SpringMVC,百度了很多资料都是比较老的,而 ...
- springmvc 项目完整示例01 需求与数据库表设计 简单的springmvc应用实例 web项目
一个简单的用户登录系统 用户有账号密码,登录ip,登录时间 打开登录页面,输入用户名密码 登录日志,可以记录登陆的时间,登陆的ip 成功登陆了的话,就更新用户的最后登入时间和ip,同时记录一条登录记录 ...
- 简单实现springmvc框架(servlet+自定义注解)
个人水平比较菜,没有这么高的实力简单实现springmvc框架,我是看了一个老哥的博客,这老哥才是大神! 原文链接:https://www.cnblogs.com/xdp-gacl/p/4101727 ...
- 一个简单的springmvc例子 入门(1)
一直是从事棋牌游戏,平常用的东西 大多数只是使用一些javase的一些 api对spring 这方面 用到的比较少,每次学了都忘,始终记不住.为了 更轻松学习springboot,从新学习了sprin ...
- 编码的UI测试项目——Visual Studio 2013
今天实现了一次编码的UI测试项目,以下是我进行测试的过程: 1.新建测试项目 在visual studio中(我用的版本是2013 update2)点击文件->新建->项目,选择“编码的U ...
- mybatis学习笔记(一)-- 简单入门(附测试Demo详细过程)
写在最前 MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生M ...
- spring springmvc mybatis maven 项目整合示例-导航页面
spring原理 实践解析-简单的helloworld spring原理案例-基本项目搭建 01 spring framework 下载 官网下载spring jar包 spring原理案例-基本项目 ...
- SpringMVC—Struts2拦截器学习网址整理
引自:http://blog.csdn.net/wp1603710463/article/details/49982683 SpringMVC—Struts2拦截器学习网址整理 最近项目中遇到权限相关 ...
- 02.基于IDEA+Spring+Maven搭建测试项目--详细过程
一.背景介绍 1.1公司相关技术 Git:是一款免费的开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目,方便多人集成开发 Maven:是基于项目对象模型(POM),可以通过一小段描述信息 ...
随机推荐
- Spinner的深入学习
简介: spinner是一个列表选择框,会在用户选择后,展示一个列表供用户进行选择.Spinner是ViewGroup的间接子类,它和其他的Android控件一样,数据需要使用Adapter进行封装. ...
- 深入分析 Java 中的中文编码问题
登录 (或注册) 中文 IBM 技术主题 软件下载 社区 技术讲座 打印本页面 用电子邮件发送本页面 新浪微博 人人网 腾讯微博 搜狐微博 网易微博 Digg Facebook Twitter Del ...
- php代码优化,mysql语句优化,面试需要用到的
首先说个问题,就是这些所谓的优化其实代码标准化的建议,其实真算不上什么正真意义上的优化,还有一点需要指出的为了一丁点的性能优化,甚至在代码上的在一次请求上性能提升万分之一的所谓就去大面积改变代码习惯, ...
- php的乱码问题
$content=file_get_contents("http://www.ctsdc.com/");$pattern="/<a\s+href=.*<\/a ...
- myBatis批量查询操作,xml中使用foreach案例
使用场景:有一个订单表,实体类为OrderBase.java,订单有个状态为status值可能为"1,2,3,4,5,6",现在需要查询状态为"2,3,4"的订 ...
- Cocos2dx淌坑日记:粒子系统PositionType的正确使用
Cocos2dx中的粒子系统,有三种定位方式,对应于不同需求. 之前我有一个想做的效果,是类似彗星的扫尾.但是当父节点也就是CCLayer跟着物体移动的时候,发现尾巴并没有跟随CCLayer移动,而是 ...
- JS 获取 地址栏 参数
法一:正则表达式 /** * 采用正则表达式获取地址栏参数: **/ var GetQueryString = function (name) { var reg = new RegExp(" ...
- 临时存存储页面上的数据---js中的cookie
实现的效果: 当点击某个按钮的时候,实现点击A的同时,弹出B的注册div,使填写在B信息数据保存下来,点击B的确定按钮,B消失,A的图标往后移动一格,原来的位置为图标C,点击C可以弹出来一个链接的页面 ...
- Java 一维数组 二维数组 三维数组
二维数组包含一位数组 三维数组就是在二维数组的基础上,再加一层.把二维数组看做是一维数组就可以了,按照上述理解类推. 下面是 一维 二维 三维数组例子 一维数组: int[] array1 ...
- 部署keepalive+lvs
部署keepalive+lvs 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 欢迎降入:高级运维工程师之路 598432640 安装LVS的步骤我已经在另外的一 ...