生活随笔
收集整理的這篇文章主要介紹了
spring mvc响应数据方式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄 1. 頁面跳轉 2. 回寫數據@ResponseBody注解
1. 頁面跳轉
轉發,如果有視圖解析器,要寫全路徑/pages/success.jsp
@RequestMapping ( "/save4" )
public String
save4 ( HttpServletRequest req
) { req
. setAttribute ( "key" , "value 4" ) ; return "forward:/pages/success.jsp" ;
}
@RequestMapping ( value
= "/redirect" )
public String
testRedirect ( ) { return "redirect:/pages/success.jsp" ;
}
視圖解析器(自動加上前后綴) https://editor.csdn.net/md/?articleId=108309962 ModelAndView對象
返回ModelAndView對象
@RequestMapping ( value
= "/save1" ) public ModelAndView
save1 ( ) { System
. out
. println ( "save running.." ) ; ModelAndView modelAndView
= new ModelAndView ( ) ; modelAndView
. setViewName ( "success" ) ; modelAndView
. addObject ( "key" , "i am value" ) ; return modelAndView
; }
ModelAndView 作為形參,springmvc框架自動注入
@RequestMapping ( "/save2" ) public ModelAndView
save2 ( ModelAndView modelAndView
) { modelAndView
. setViewName ( "success" ) ; modelAndView
. addObject ( "key" , "i am value 1" ) ; return modelAndView
; }
model作為形參
@RequestMapping ( "/save3" ) public String
save3 ( Model model
) { model
. addAttribute ( "key" , "i am value 3" ) ; return "success" ; }
2. 回寫數據@ResponseBody注解
@ResponseBody注解簡單介紹,用來返回字符串,對象。1. @ResponseBody 告知spring mvc框架,該方法,不進行視圖跳轉,直接進行視圖響應2. 回寫json,Jackson,(jackson-core, jackson-databind, jackson-annotations)3. 回寫對象,或者集合, 封裝對象或者轉換json的步驟,需要繁瑣的配置。RequestMappingHandlerAdapter注入集合。。4. 使用<mvc:annotation-driven/>自動集成轉換json
@RequestMapping ( "/save5" ) @ResponseBody public String
save5 ( ) { return "hello world !" ; }
返回json字符串,使用Jackson,導入pom
@RequestMapping ( "/save6" ) @ResponseBody public String
save6 ( ) { User user
= new User ( ) ; user
. setName ( "jack" ) ; user
. setAge ( 18 ) ; ObjectMapper objectMapper
= new ObjectMapper ( ) ; String str
= null
; try { str
= objectMapper
. writeValueAsString ( user
) ; } catch ( JsonProcessingException e
) { e
. printStackTrace ( ) ; } return str
; }
@RequestMapping ( value
= "/save7" ) @ResponseBody public User
save7 ( ) { User user
= new User ( ) ; user
. setName ( "bitqian" ) ; user
. setAge ( 19 ) ; return user
; }
< bean id = " requestMappingHandlerAdapter" class = " org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" > < property name = " messageConverters" > < list> < bean class = " org.springframework.http.converter.json.MappingJackson2HttpMessageConverter" /> </ list> </ property> </ bean>
< mvc: annotation-driven/>
總結
以上是生活随笔 為你收集整理的spring mvc响应数据方式 的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔 網站內容還不錯,歡迎將生活随笔 推薦給好友。