SpringMvc根據(jù)返回值類型不同處理響應(yīng)的方法
一、介紹
我們可以通過(guò)控制器方法的返回值設(shè)置跳轉(zhuǎn)的視圖??刂破髦С秩鐅oid,String,ModelAndView類型。
二、返回值為void
返回值是void會(huì)跳轉(zhuǎn)到名字是前綴(也就是你前面編寫的視圖解析器中的)+方法路徑名+后綴的jsp頁(yè)面
(1)控制層方法
@RequestMapping("/test") public void t1(){ System.out.println("hello!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"); }
路徑是test,方法執(zhí)行完畢以后會(huì)跳轉(zhuǎn)到test.jsp頁(yè)面中(前提是配置好了視圖解析器,不然可能會(huì)報(bào)錯(cuò))
三、返回值為String
(1)控制層
此時(shí)跳轉(zhuǎn)到的的是前綴+返回值+后綴的jsp頁(yè)面。
@RequestMapping("/c2/h1") public String t2(){ System.out.println("90"); return "test"; }
四、返回值為ModelAndView
該對(duì)象是SpringMvc提供的對(duì)象,它可以向request域設(shè)置數(shù)據(jù)并指定跳轉(zhuǎn)的頁(yè)面。該對(duì)象包含Model對(duì)象和View對(duì)象。
Model:向request域中設(shè)置數(shù)據(jù)。
View:指定跳轉(zhuǎn)的頁(yè)面
(1)控制層方法
@RequestMapping("/c2/h1") public ModelAndView t3(){ //創(chuàng)建ModelAndView對(duì)象 ModelAndView modelAndView=new ModelAndView(); //獲取Model對(duì)象,本質(zhì)上是一個(gè)Map Map<String,Object> model=modelAndView.getModel(); //使用Model對(duì)象向request域設(shè)置數(shù)據(jù) model.put("name","大大大大大牛"); //使用View對(duì)象設(shè)置跳轉(zhuǎn)的路徑為/test.jsp modelAndView.setViewName("test"); return modelAndView; }
(2)jsp頁(yè)面
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <h1>request=${requestScope.name}</h1> </body> </html>
這里的${requestScope.name}是el表達(dá)式寫法,所以在web.xml中要添加支持el表達(dá)式
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> </web-app>
到此這篇關(guān)于SpringMvc根據(jù)返回值類型不同處理響應(yīng)的文章就介紹到這了,更多相關(guān)SpringMvc返回值類型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java調(diào)用Oracle存儲(chǔ)過(guò)程的方法實(shí)例
這篇文章介紹了java調(diào)用Oracle存儲(chǔ)過(guò)程的方法實(shí)例,有需要的朋友可以參考一下2013-09-09SpringData如何通過(guò)@Query注解支持JPA語(yǔ)句和原生SQL語(yǔ)句
這篇文章主要介紹了SpringData如何通過(guò)@Query注解支持JPA語(yǔ)句和原生SQL語(yǔ)句,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11Java中Future和FutureTask的示例詳解及使用
Java中的Future和FutureTask通常和線程池搭配使用,用來(lái)獲取線程池返回執(zhí)行后的返回值,下面這篇文章主要給大家介紹了關(guān)于Java中Future和FutureTask使用的相關(guān)資料,需要的朋友可以參考下2021-11-11StackTraceElement獲取方法調(diào)用棧信息實(shí)例詳解
這篇文章主要介紹了StackTraceElement獲取方法調(diào)用棧信息實(shí)例詳解,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02Spring BeanPostProcessor接口使用詳解
本篇文章主要介紹了Spring BeanPostProcessor接口使用詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-01-01Spring6當(dāng)中獲取Bean的四種方式小結(jié)
Spring 為Bean 的獲取提供了多種方式,通常包括4種方式,(也就是說(shuō)在Spring中為Bean對(duì)象的創(chuàng)建準(zhǔn)備了多種方案,目的是:更加靈活),本文將通過(guò)代碼示例詳細(xì)的給大家介紹了一下這四種方式,需要的朋友可以參考下2024-04-04使用Maven創(chuàng)建和管理多模塊項(xiàng)目的詳細(xì)步驟
使用Maven進(jìn)行多模塊項(xiàng)目管理是一種常見(jiàn)的做法,它可以幫助你組織大型項(xiàng)目,使其結(jié)構(gòu)更加清晰,便于維護(hù)和構(gòu)建,以下是使用Maven創(chuàng)建和管理多模塊項(xiàng)目的詳細(xì)步驟,需要的朋友可以參考下2024-10-10一起來(lái)學(xué)習(xí)Java的棧和隊(duì)列
這篇文章主要為大家詳細(xì)介紹了Java的棧和隊(duì)列,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-03-03