1、springMVC请求由前端到后端的流程

2、配置过程

  (1)需要的jar包 

  spring-aop.jar
  spring-beans.jar
  spring-context.jar
  spring-core.jar
  spring-expression.jar
  spring-web.jar
  spring-webmvc.jar

  commons-logging-1.1.3.jar

  (2)在web.xml里面配置DispatcherServlet,用于拦截前端发送的请求。

  DispatcherServlet是前端控制器,配置在web.xml中,拦截匹配的请求,匹配规则自己定义。把拦截到的请求
  根据相应的规则分发到目标Controller里对应的RequestMapping来处理,是配置SpringMVC的第一步。

<servlet>
<servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--配置DispatcherServlet初始化参数,配置springMVC配置文件的位置和名称-->
<init-param>
<param-name>contextConfigLocation</param-name>
<!-- <param-value>classpath:springmvc.xml</param-value> -->
<param-value>/WEB-INF/springmvc.xml</param-value>
</init-param>
<!--servlet在web容器加载时创建,而非在第一次访问时才创建,servelt默认不加载,只有在第一次访问时才加载-->
<load-on-startup>1</load-on-startup>
</servlet> <servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<!--对所有后缀是.json的请求进行拦截,匹配-->
<url-pattern>*.json</url-pattern>
</servlet-mapping>

  (3)创建第一步中的springmvc.xml配置文件

  

<!--配置自动扫描的包-->
<context:component-scan base-package="com.springmvc"/> <!--配置视图解析器,把handler的返回值,转换为实际的物理视图,
即RequestMapping对应的方法,有一个返回值,要根据对应的返回值,跳转到不同的页面
-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- 要跳转页面的前缀,即页面所在的路径 -->
<property name="prefix" value="/view/" />
<!-- 要跳转页面的后缀名-->
<property name="suffix" value=".html" />
</bean>

  (4)创建handler类TestHandler

  

@Controller
public class TestHandler { /**
* 0、前端控制器DispatcherServlet收到请求,发给和url相匹配的RequestMapping
*
* 1、使用@RequestMapping映射前端请求的url
*
* 2、返回时会通过视图解析器,解析为实际的物理视图
* 对于视图解析器InternalResourceViewResolver会做如下解析
* 通过 prefix + returnVal + suffix 得到实际的物理视图,然后做请求转发
*
*/
@RequestMapping(value={"/helloworld.json"},method={RequestMethod.GET})
public String sayHello(){
return "success";
}
}

  (5)index.html

<a href="helloworld.json">helloworld</a>

  (6)一个简单的springMVC控制器就配置完成了,要注意文章开始的第一章图。

springMVC-1的更多相关文章

  1. 【分享】标准springMVC+mybatis项目maven搭建最精简教程

    文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...

  2. Springmvc数据校验

    步骤一:导入四个jar包 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=" ...

  3. 为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?

    今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑 ...

  4. 【SSM框架】Spring + Springmvc + Mybatis 基本框架搭建集成教程

    本文将讲解SSM框架的基本搭建集成,并有一个简单demo案例 说明:1.本文暂未使用maven集成,jar包需要手动导入. 2.本文为基础教程,大神切勿见笑. 3.如果对您学习有帮助,欢迎各种转载,注 ...

  5. 快速搭建springmvc+spring data jpa工程

    一.前言 这里简单讲述一下如何快速使用springmvc和spring data jpa搭建后台开发工程,并提供了一个简单的demo作为参考. 二.创建maven工程 http://www.cnblo ...

  6. redis集成到Springmvc中及使用实例

    redis是现在主流的缓存工具了,因为使用简单.高效且对服务器要求较小,用于大数据量下的缓存 spring也提供了对redis的支持: org.springframework.data.redis.c ...

  7. 流程开发Activiti 与SpringMVC整合实例

    流程(Activiti) 流程是完成一系列有序动作的概述.每一个节点动作的结果将对后面的具体操作步骤产生影响.信息化系统中流程的功能完全等同于纸上办公的层级审批,尤其在oa系统中各类电子流提现较为明显 ...

  8. springMVC学习笔记--知识点总结1

    以下是学习springmvc框架时的笔记整理: 结果跳转方式 1.设置ModelAndView,根据view的名称,和视图渲染器跳转到指定的页面. 比如jsp的视图渲染器是如下配置的: <!-- ...

  9. springMVC初探--环境搭建和第一个HelloWorld简单项目

    注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...

  10. springmvc的拦截器

    什么是拦截器                                                         java里的拦截器是动态拦截action调用的对象.它提供了一种机制可以使 ...

随机推荐

  1. linux 设置mysql 数据库编码utf8

    转载地址http://www.linuxidc.com/Linux/2015-08/121676.htm在MySQL数据库中, 当插入数据无法支持中文时, 可将该数据库的编码集设置为utf8, 故在创 ...

  2. VS快捷键大全(总结了一些记忆的口诀)

    相信.Net开发人员都想能够熟记各种VS快捷键以提高平时开发的效率,但苦于记忆能力太差而快捷键又特别多,特别烦,所以作罢! 下面我将简单介绍一下我记忆VS快捷键的一些方法,希望对大家有所帮助. 1.窗 ...

  3. linux Basis --- tar command

    -c: compress archives -x:decompress archives -t:check archives -z:whether it has the attribute of gz ...

  4. cmd chcp命令切换字符格式UTF8

    cmd chcp命令切换字符格式   命令介绍:   chcp 65001   #换成utf-8代码页   chcp 936       #换成默认的gbk   chcp 437       #美国英 ...

  5. HTML学习笔记——CSS初涉

    1>嵌入式css写法 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http ...

  6. Java Connection.setAutoCommit

    Java setAutoCommit 默认为true,即每条SQL语句在各自的一个事务中执行. 很多时候需要有多个操作在一个事务执行,如循环插入,此时可在插入开始前设置 conn.setAutoCom ...

  7. 有scp命令,传输文件却显示报错无此命令

    今天下午在一台服务器上使用scp命令向另外一台服务器传文件的时候,报此错误 bash: scp: command not found ,lost connection,以为是该服务器没有安装此命令,w ...

  8. ectouch笔记

    1.取消配送方式验证mobile\include\apps\default\controller\FlowController.class.php 第1109行 if (isset($is_real_ ...

  9. thinkphp 3.2响应头 x-powered-by 修改

    起初是看到千图网的登录链接 查看到的 自己做的网站也看了下 修改的办法就是TP3.2.2 的框架里 具体路径是D:\www\ThinkPHP\Library\Think\View.class.php ...

  10. OC-方法的声明和实现、匿名对象

    方法声明: 方法调用: *冒号也是方法名的一部分 *同一个类中不允许两个对象方法同名 练习 给Car类设计一个方法,用来和其他车比较车速,如果快返回1,慢返回-1,相同返回0 #import < ...