SpringMVC学习笔记(视图解析器) 下载本文

学习SpringMVC——说说视图解析器

各位前排的,后排的,都不要走,咱趁热打铁,就这一股劲我们今天来说说spring mvc的视图解析器(不要抢,都有位子~~~) 相信大家在昨天那篇如何获取请求参数篇中都已经领略到了spring mvc注解的魅力和套路了。搭上@RequestMapping的便车,我们可以去到我们想去的地方(方法)去,借助@RequestParam、@PathVariable等我们可以得到请求中想要的参数值,最终还能够通过神奇的“return SUCCESS”到达我们的目的地。今天主要就来说说在达到目的地的路上,我们都经历了些什么! 在此之前

我们顺便说说@RequestHeader、请求参数类型为POJO(也就是Java对象类型)的情况以及ModelAndView 1. @RequestHeader

这个无需多说,还是原来的配方,还是一样的套路,只要举个例子,你就都明白了。

在SpringMVCTest中添加测试方法

@RequestMapping(value=\public

String

testRequestHeader(@RequestHeader(value=\String language){

System.out.println(\Accept-Languge:\+ language);

return SUCCESS; }

我们知道一个请求如get请求或post都有请求头和响应头,这里我们想获取的是请求头中“Accept-Language”的具体信息,所以就用上了@RequestHeader注解来获取。 index.jsp中

href=\/>

启动服务器,点击超链接,我们得到了 testRequestHeader Accept-Languge:zh-CN 2. 请求参数为POJO

前面两篇,我们看到的请求类型都是一些字符串也就是某一个字段。那么如果现在有一个form表单,说夸张点,表单中有10个字段需要提交,行吧,还用原来的匹配的方式,你要用10个参数来接收,累不累?累!有没有办法?有!我们可以把这些要提交的字段封装在一个对象中,从而请求类型就是一个POJO。 这里我们新建一个类User + View Code 还有一个Address类 + View Code

同时我们还需要在SpringMVCTest中写一个testPojo的测试方法

@RequestMapping(value=\public String testPojo(User user){

System.out.println(\ return SUCCESS; }

好了,这样,我们就可以在前台jsp页面上构造这样的表单数据了

city:

type=\

name=\



至此,我们启动tomcat服务器,就可以发送一个POJO类型的参数了,并且我们成功了读取了这个请求参数 3. ModelAndView

ModelAndView是什么鬼?其实它是我们经常写在SpringMVCTest里测试方法的返回值类型,在方法体内我们可以通过ModelAndView对象来是像请求域中添加模型数据的,抽象?那就看例子吧~~~