SpringMVC常用注解實例詳解3:@ResponseBody

我的開發環境框架: springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat版本:apache-tomcat-7.0.26

前置文章-SpirngMVC配置入門

     Spring整合Freemarker

@ResponseBody用于在controller方法中直接返回一個數據對象,常用于Ajax交互中,本文用Ajax交互的例子來演示下該註釋的用法。

step1.由於Ajax傳輸數據用到JSON,所以要先添加JSON依賴如下:

Maven代碼如下:

org.codehaus.jacksonjackson-core-asl1.8.4org.codehaus.jacksonjackson-mapper-asl1.8.4

在spring配置文件中加入JSON所需配置,此處以spring-servlet.xml為例,代碼如下:

application/json;charset=UTF-8

step2.編寫頁面ajaxGetMsg.ftl,代碼如下:

Insert title here@ResponseBody結合Ajax例子演示 getMsg(){;//ajax訪問controller方法,利用@ResponseBody返回數據對象 $.ajax({async:false,cache : false,type : ,dataType : ,url:,success:function(data){$.each(data, function(i,obj){contentobj;});$().html(content);},error:function(){alert();return;}});}

step3.編寫controller方法,代碼如下:

package ;import java.util.ArrayList;import java.util.List;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller@RequestMapping(“/learnMVC”)public class LearnMVCController {//前往初始頁面@RequestMapping(“/indexPage”)public String indexPage(){return “ajaxGetMsg.ftl”;}//Ajax交互方法@RequestMapping(“/ajaxGetMsg”)@ResponseBodypublic List<String> ajaxGetMsg() {List<String> strList = new ArrayList<String>();strList.add(“學”);strList.add(“習”);strList.add(“Spring”);strList.add(“M”);strList.add(“V”);strList.add(“C”);return strList;}}

indexPage()方法用於訪問初始頁面,ajaxGetMsg()方法上加了@ResponseBody註釋,所以該方法可以直接向頁面返回數據對象,,該方法的返回數據類型為List<String>.

step4.運行調試

部署運行項目,瀏覽器訪問::8080/你的工程名/learnMVC/indexPage.htm

運行結果如下:

點擊按鈕,ajax加載數據得到如下結果:

complete!

系列文章鏈接:

SpringMVC常用注解實例詳解:@Controller,@RequestMapping,@RequestParam,@PathVariable

SpringMVC常用注解實例詳解:@ModelAttribute

看天,看雪,安安静静,不言不语都是好风景。

SpringMVC常用注解實例詳解3:@ResponseBody

相关文章:

你感兴趣的文章:

标签云: