简单的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),可以通过一小段描述信息 ...
随机推荐
- IOS第七天(4:UiTableView 数据的显示优化重复实例和tableFooterView和tableHeaderView)
//加上头部 和底部 - (void)viewDidLoad { [super viewDidLoad]; [self tableView]; // 设置行高 self.tableView.rowHe ...
- 使用LVM对硬盘在线扩容
初始状态: root@control:/dev/nova-volumes# vgdisplay --- Volume group --- VG Name nova-volumes System ID ...
- Code Snippet
Code Snippet: http://msdn.microsoft.com/en-us/library/z41h7fat.aspx CodePlex.Snippets 4.0 - Visual S ...
- C#中的泛型 【转】
C#中的泛型 泛型(generic)是C#语言2.0和通用语言运行时(CLR)的一个新特性.泛型为.NET框架引入了类型参数(type parameters)的概念.类型参数使得设计类和方法时,不必确 ...
- 解决Tomcat无法shutdown进程
转自:http://my.oschina.net/yongyi/blog/405198 问题分析 这个在windows下没有碰到过,因为此前跑Tomcat都是以服务而不是命令脚本的形式跑的,而且已经换 ...
- rabbitmq redis
RabbitMQ RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统. 对于RabbitMQ来说,生产和消费不再针对内存里的一个Queue对象,而是某台服务器上的RabbitMQ Se ...
- react 年-月-日 时:分:秒
// 时间let date = new Date();debugger;let seperator1 = "-";let seperator2 = ":";le ...
- LaTeX学习教程
本来我对LaTeX不是看好的,毕竟都是命令格式的.觉得有word就足够啦word可视化操作方便快捷. 但是由于要写论文等,在导师要求下潜心学习一下,不知不觉间被LaTeX的强大功能所吸引.现在很多出版 ...
- K近邻分类算法实现 in Python
K近邻(KNN):分类算法 * KNN是non-parametric分类器(不做分布形式的假设,直接从数据估计概率密度),是memory-based learning. * KNN不适用于高维数据(c ...
- linux 下搭建svn
Update 程序设计中的“后悔药”——SVN 一.历史起源 1.版本控制软件 答:主要是对源代码版本进行控制与管理 2.版本控制软件起源 CVS:最早期的开源的版本控制软件(开源奇葩) VSS: ...