SpringMVC

SpringMVC 和其他WRE框架一样,他基于MVC设计理念,通过一套MVC注解,让POJO(简单java对象)成为处理请求的控制器,无需实现任何接口,同时,SpringMVC还支持REST风格的URL请求:注解驱动及REST风格的SpringMVC是Spring3.0最出彩的功能之一。此i外,SpringMVC在数据绑定,视图解析、本地化处理及静态资源处理上有着许多不俗的表现。

SpringMVC的关键注释:
@Contronller(写在POJO类名上)

1.S怕ringMVC体系概述
这里写图片描述

这里写图片描述

在整个框架中、DispatcherServlet 处于核心位置,他负责协调和组织不同组件已完成请求处理并返回相应工作
1、具体的处理流程
1) 整个过程始于客户端发出一个HTTP请求,Web应用服务器接收到这个请求,如果匹配DispatcherServlet的请求映射路径(在web.xml中指定),Web容器将该请求转交给DispatcherServlet处理。
2) DispatcherServlet接收到这个请求后,将根据请求的信息及HandlerMapping的配置找到处理请求的处理器(Handler)。注意:Spring MVC中并没有定义一个Handler接口,实际上任何一个Object都可以成为请求处理器。
3) 当DispatcherServlet根据HandlerMapping得到对应当前请求的Handler后,通过HandlerAdapter对Handler进行封装,再以统一的适配器接口调用Handler。HandlerAdapter是Spring MVC的框架级接口,顾名思义,HandlerAdapter是一个适配器,它用统一的接口对各种Handler方法进行调用。
4) 处理器完成业务逻辑的处理后将返回一个ModelAndView给DispatcherServlet,ModelAndView包含了视图逻辑名和模型数据信息。
5) ModelAndView中包含的是“逻辑视图名”而非真正的视图对象,DispatcherServlet借由ViewResolver完成逻辑视图名到真实视图对象的解析工作。
6) 当得到真实的视图对象View后,DispatcherServlet就使用这个View对象对ModelAndView中的模型数据进行视图渲染。
7) 最终客户端得到的响应消息

2、简单基本使用
1.导入java包
com.springsource.org.apache.commons.logging-1.1.1.jar
spring-beans.RELEASE.jar
spring-context.RELEASE.jar
spring-core.RELEASE.jar
spring-expression.RELEASE.jar
spring-web.RELEASE.jar
spring-webmvc.RELEASE.jar
spring-aop.RELEASE
jstl.jar

2.配置web.xml
这里写图片描述

配置过滤器第一个限制为 .do结尾的文件可通过,后一个解决乱码问题

3.编写请求处理器

这里写图片描述

4.jsp页面只需${msg}接收即可

5.配置springMVC的配置文件,使控制器和视图解析器等生效
配置文件名为:hello(可变)-servlet.xml;(非常重要)
这里写图片描述

3、springMVC的转发和重定向
ModelAndView(使用的是转发)

第一种、使用原生的request和response完成转发和重定向
这里写图片描述

第二种、以返回字符串的形式,数据的传输可以用Map集合,也可以用session
这里写图片描述

4、数据的接收处理
通过URL传参的方式来测试springMVC获取前端数据的方式,前段传一个:login.do?username=”11”;可在方法属性中用String username接收
也可以直接包含username属性对象接收

这里写图片描述

@RequestMapping(“/login1.do”)—>从页面传过来的请求,可通过他找到对应的方法
@RequestParam(“username”)String name–>String name和前端页面的username不一致时可用@RequestParam(“username”)来标记

5、乱码的处理
可在Tomcat设置URIEncoding=”utf-8”
或者如上在web.xml中配置

6、文件的上传
1) 导入jar包
com.springsource.org.apache.commons.fileupload-1.2.0.jar
com.springsource.org.apache.commons.logging-1.1.1.jar
com.springsource.org.apache.commons.io-1.4.0.jar

2)jsp页面
这里写图片描述

3)、编写Contorller

这里写图片描述

上图为单文件传和多文件上传

4)、在spring配置文件中配置解析器

在上面的hello-servlet.xml中配置

7.文件的下载

这里写图片描述

文件下载的关键头部
response.setContentType(“application/x-msdownload”);
response.setHeader(“Content-Disposition”, “attachment;filename=”+fileName);

8、ajax的应用
两种方式交互方式,
一种是发送一个请求数据,返回一个响应的标识数据
一种是获取一个集合的JSON格式数据
请求JSON数据
需导入新的jar包(jar包在备课/lib下面)
jackson-annotations.jar
jackson-core.jar
jackson-databind.jar

还需配置json解析器配置在hello-servelt.xml

页面:
这里写图片描述

Controller控制器端的编写

这里写图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值