<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            java語言

            SpringMVC教程之json交互使用

            時間:2025-05-28 08:30:17 java語言 我要投稿
            • 相關推薦

            SpringMVC教程之json交互使用

              Spring MVC屬于SpringFrameWork的后續產品,已經融合在Spring Web Flow里面。本文是百分網小編搜索整理的關于SpringMVC教程之json交互使用詳解,供參考學習,希望對大家有所幫助!想了解更多相關信息請持續關注我們應屆畢業生考試網!

              json數據交互

              1.1 @RequestBody

              作用:@RequestBody注解用于讀取http請求的內容(字符串),通過springmvc提供的HttpMessageConverter接口將讀到的內容轉換為json、xml等格式的數據并綁定到controller方法的參數上。

              本例子應用:@RequestBody注解實現接收http請求的json數據,將json數據轉換為Java對象

              1.2 @ResponseBody

              作用:該注解用于將Controller的方法返回的對象,通過HttpMessageConverter接口轉換為指定格式的數據如:json,xml等,通過Response響應給客戶端

              本例子應用:@ResponseBody注解實現將controller方法返回對象轉換為json響應給客戶端

              1.3 請求json,響應json實現:

              1.3.1 環境準備

              Springmvc默認用MappingJacksonHttpMessageConverter對json數據進行轉換,需要加入jackson的包,如下:

              1.3.2 配置json轉換器

              在注解適配器中加入messageConverters

              <!--注解適配器 -->

              <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">

              <property name="messageConverters">

              <list>

              <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>

              </list>

              </property>

              </bean>

              注意:如果使用<mvc:annotation-driven /> 則不用定義上邊的內容。

              1.3.3 controller編寫

              // 商品修改提交json信息,響應json信息

              @RequestMapping("/editItemSubmit_RequestJson")

              public @ResponseBody Items editItemSubmit_RequestJson(@RequestBody Items items) throws Exception {

              System.out.println(items);

              //itemService.saveItem(items);

              return items;

              }

              1.3.4 頁面js方法編寫:

              引入 js:

              <script type="text/JavaScript"

              src="${pageContext.request.contextPath }/js/jQuery-1.4.4.min.js"></script>

              //請求json響應json

              function request_json(){

              $.ajax({

              type:"post",

              url:"${pageContext.request.contextPath }/item/editItemSubmit_RequestJson.action",

              contentType:"application/json;charset=utf-8",

              data:'{"name":"測試商品","price":99.9}',

              success:function(data){

              alert(data);

              }

              });

              }

              1.4 Form提交,響應json實現:

              采用form提交是最常用的作法,通常有post和get兩種方法,響應json數據是為了方便客戶端處理,實現如下:

              1.4.1 環境準備

              同第一個例子

              1.4.2 controller編寫

              // 商品修改提交,提交普通form表單數據,響應json

              @RequestMapping("/editItemSubmit_ResponseJson")

              public @ResponseBody Items editItemSubmit_ResponseJson(Items items) throws Exception {

              System.out.println(items);

              //itemService.saveItem(items);

              return items;

              }

              1.4.3 頁面js方法編寫:

              function formsubmit(){

              var user = " name=測試商品&price=99.9";

              alert(user);

              $.ajax(

              {

              type:'post',//這里改為get也可以正常執行

              url:'${pageContext.request.contextPath}/item/ editItemSubmit_RequestJson.action',

              //ContentType沒指定將默認為:application/x-www-form-urlencoded

              data:user,

              success:function(data){

              alert(data.name);

              }

              }

              )

              }

              從上邊的js代碼看出,已去掉ContentType的定義,ContentType默認為:application/x-www-form-urlencoded格式。

              1.4.4 jquery的form插件插件

              針對上邊第二種方法,可以使用jquery的form插件提交form表單,實現ajax提交form表單,如下:

              引用js:

              <script type="text/javascript"

              src="${pageContext.request.contextPath }/js/jquery-1.4.4.min.js"></script>

              <script type="text/javascript"

              src="${pageContext.request.contextPath }/js/jquery.form.min.js"></script>

              js方法如下:

              function response_json() {

              //form對象

              var formObj = $("#itemForm");

              //執行ajax提交

              formObj.ajaxSubmit({

              dataType : "json",//設置預期服務端返回json

              success : function(responseText) {

              alert(responseText);

              }

              });

              }

              1.4.5 小結

              實際開發中常用第二種方法,請求key/value數據,響應json結果,方便客戶端對結果進行解析。

            【SpringMVC教程之json交互使用】相關文章:

            在PHP語言中使用JSON09-14

            如何使用Jackson解析JSON示例08-12

            php使用curl發送json格式數據實例07-08

            php中序列化和json使用方法10-28

            PS基礎教程之:筆刷的簡單使用08-14

            PHP中Json應用09-05

            java中的JSON操作10-22

            javascript解析json實例10-20

            springmvc如何設置多視圖器呢10-28

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看