@CookieValue獲取Cookie信息,使用Servlet API做爲入參,處理模型數據

@RequestMapping("/testCookieValue")
	public String testCookieValue(@CookieValue(value="JSESSIONID") String id) {
		System.out.println(id);
		return "success";
	}

獲取url的JSESSIONID,但注意的是:id的類型應爲String類型,不然報錯html

使用Servlet API做爲入參java

spring mvc 底層有大量公衆業務去處理spring

在有些狀況,spring MVC 須要使用Servlert API,spring mvc支持九種類型servlet對象api

HttpServletRequest:請求mvc

HttpServletResponse:響應app

HttpSession:會話jsp

java.security.Frinclpal:受權學習

Locale:本地信息ui

InputStream:輸出流url

OutputStream:輸入流

Reader:輸出流

Writer:輸入流

@RequestMapping("/testservletapi")
	public String testservletapi(HttpServletRequest request,HttpServletResponse reponse) {
		System.out.println(request);
		System.out.println(reponse);
		return "success";	
	}

處理模型數據

數據模型的定義:http://blog.sina.com.cn/s/blog_76baa3d101010r7o.html

Spring MVC提供瞭如下幾種途徑輸出模型數據:

-ModelAndView:處理方法返回值類型爲ModelAndView時,方法體便可經過該對象添加模型數據

1.控制器處理方法的返回值若是爲ModelAndView,則既包含視圖信息,也包含模型數據信息。

2.方法的內部,建立ModelAndView對象:

設置視圖:

               setView(view view);

               setViewName(String);

添加模型數據:

                 addObject(String,Object);

                  addObjects(Map map);

3.ModelAndView當中的模型數據放到請求範圍中:

控制器方法中的返回值類型要注意

@RequestMapping("/testModelAndView")
	public ModelAndView testModelAndView() {
		ModelAndView mv = new ModelAndView();
		//ModelAndView 模型數據的值是放到Request範圍當中
		mv.setViewName("success");
		mv.addObject("name", "tom");
		return mv;
	}

 success.jsp中的獲取方法:

  • EL表達式獲取
<body>
    ${param.test}
</body>
<body>
success page,,,,,,,
${requestScope.name }
</body>

運行結果:

-Map及Model:入參

org.springframework.ui.Model,org.springframework.ui.ModelMap或java.uti.Map時,處理方法返回時,Map中的數據會自動添加到模型中

-@SessionAttributes:模型中的某個屬性暫存到HttpSession中,以便多個請求之間能夠共享這個屬性

-@ModelAttribute:方法入參標註該註解後,入參對象就會放到數據模型中。     

接下來會學習下面幾種模型數據的方法       

相關文章
相關標籤/搜索