paulwong

          spring3MVC+JSON

           <!-- 自動(dòng)解析action返回值 解析成json格式 -->
          <context:component-scan base-package="com.bplow.*.web" />  
          <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />  
          <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" >  
              
          <property name="messageConverters">  
                  
          <util:list id="beanList">  
                      
          <ref bean="mappingJacksonHttpMessageConverter"/>  
                  
          </util:list>  
              
          </property>  
          </bean>  
          <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">  
              
          <property name="supportedMediaTypes">  
                  
          <list>  
                      
          <value>text/html;charset=UTF-8</value>  
                  
          </list>  
              
          </property>  
          </bean>  
          <!-- 自動(dòng)解析action返回值 解析成json格式 -->

          然后需要額外的jar包 jackson 1.1,這里讓我很無(wú)語(yǔ),我首先下的1.9放上去什么方法找不到,換1.8x 方法找不到 我一直試到1.6 后來(lái)怒了用最老的 好了。。。坑,這絕對(duì)是坑啊

          然后你的action中直接返回對(duì)象,集合,map吧 非常爽啊。測(cè)試如下





          package com.bplow.test.web;

          import java.io.UnsupportedEncodingException;
          import java.util.HashMap;
          import java.util.LinkedList;
          import java.util.List;
          import java.util.Map;

          import org.springframework.stereotype.Controller;
          import org.springframework.web.bind.annotation.RequestMapping;
          import org.springframework.web.bind.annotation.RequestMethod;
          import org.springframework.web.bind.annotation.ResponseBody;

          @Controller
          public class TestAction {

          // ResponseBody 對(duì)應(yīng)string則對(duì)應(yīng)ajax getText
          @RequestMapping(value = "/testAction", method = RequestMethod.GET)
          @ResponseBody
          public String allOnActivities() throws UnsupportedEncodingException {

          return "{'title':'HelloWorldGOGOGO'}";
          }


          @RequestMapping(value
          = "/testAction2", method = RequestMethod.GET)
          @ResponseBody
          public TestVo getJsonVo() {

          TestVo vo
          = new TestVo();
          vo.setTitle(
          "吃吧");
          return vo;
          }


          @RequestMapping(value
          = "/testAction3", method = RequestMethod.GET)
          @ResponseBody
          public List getJsonList() {

          TestVo vo
          = new TestVo();
          vo.setTitle(
          "吃吧");
          List l
          = new LinkedList();
          l.add(vo);
          l.add(vo);
          l.add(vo);
          l.add(vo);
          l.add(vo);
          return l;
          }


          @RequestMapping(value
          = "/testAction4", method = RequestMethod.GET)
          @ResponseBody
          public Map getMap() {

          TestVo vo
          = new TestVo();
          vo.setTitle(
          "吃吧");
          HashMap hsm
          = new HashMap();
          hsm.put(
          "a", 123);
          hsm.put(
          "b", "123");
          hsm.put(
          "c", vo);
          return hsm;
          }

          }

          posted on 2012-05-18 00:14 paulwong 閱讀(1353) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): SPRING MVC

          主站蜘蛛池模板: 林甸县| 赤壁市| 曲沃县| 莱西市| 肇州县| 崇阳县| 扶余县| 汨罗市| 舟曲县| 集贤县| 东海县| 沅江市| 宝鸡市| 黔江区| 晴隆县| 钟山县| 仁怀市| 永修县| 江都市| 皋兰县| 什邡市| 嘉兴市| 宜兴市| 湘西| 秭归县| 资溪县| 城步| 黄平县| 安西县| 广饶县| 会同县| 六安市| 县级市| 鞍山市| 百色市| 天镇县| 长泰县| 阳江市| 宁明县| 崇左市| 健康|