<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    初一七月

    你必須承認,我們生存的這個世界取決于自身的能力而非別人的保護(AW)
    隨筆 - 23, 文章 - 0, 評論 - 11, 引用 - 0
    數據加載中……

    SpringMVC添加支持Http的delete、put請求

        瀏覽器form表單只支持GET與POST請求,而DELETE、PUT等method并不支持,spring3.0添加了一個過濾器,可以將這些請求轉換為標準的http方法,使得支持GET、POST、PUT與DELETE請求。

        1.配置springmvc配置文件springmvc-servlet.xml
    <!-- 瀏覽器不支持put,delete等method,由該filter將/xxx?_method=delete轉換為標準的http delete方法 -->  
    <filter>  
        
    <filter-name>HiddenHttpMethodFilter</filter-name>  
        
    <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>  
    </filter>  
      
    <filter-mapping>  
        
    <filter-name>HiddenHttpMethodFilter</filter-name>  
        
    <servlet-name>springmvc</servlet-name>  
    </filter-mapping> 

        其中springmvc是DispatcherServlet的名稱

        2.在對應的Controller中,添加對應的請求注解
    /** 進入新增 */
    @RequestMapping(value
    ="/new")  
         
    /** 顯示 */  
    @RequestMapping(value
    ="/{id}")  
          
    /** 編輯 */  
    @RequestMapping(value
    ="/{id}/edit")  
         
    /** 保存新增 */  
    @RequestMapping(method
    =RequestMethod.POST)  
         
    /** 保存更新 */  
    @RequestMapping(value
    ="/{id}",method=RequestMethod.PUT)  
          
    /** 刪除 */    
    @RequestMapping(value
    ="/{id}",method=RequestMethod.DELETE)  

    /** 批量刪除 */  
    @RequestMapping(method
    =RequestMethod.DELETE)

        進入新增頁面時沒有用add而是用new,是因為某些瀏覽器會將add當做廣告攔截掉。

        3.頁面請求
    <form:form action="/xxx/xxx" method="put">  
    </form:form>

        生成的頁面代碼會添加一個hidden的_method=put,并于web.xml中的HiddenHttpMethodFilter配合使用,在服務端將post請求改為put請求
    <form id="userInfo" action="/xxx/xxx" method="post">  
        
    <input type="hidden" name="_method" value="put"/>  
    </form> 

        另外也可以用ajax發送delete、put請求

    posted on 2011-05-18 18:31 初一七月 閱讀(9419) 評論(5)  編輯  收藏 所屬分類: Web

    評論

    # re: SpringMVC添加支持Http的delete、put請求  回復  更多評論   

    一旦form有屬性
    enctype="multipart/form-data"時,put方法將不會起作用。
    2012-06-02 13:42 | pch

    # re: SpringMVC添加支持Http的delete、put請求  回復  更多評論   

    我認為新增和編輯應該這樣:
    /** 進入新增 */
    @RequestMapping(value="/creator")
    /** 編輯 */
    @RequestMapping(value="/{id}/editor")

    url中無動詞,這樣更符合rest的風格。
    2012-06-02 14:15 | pch

    # re: SpringMVC添加支持Http的delete、put請求  回復  更多評論   

    $.getJSON
    data += "&_method=put";

    后臺好像不能請求到put方法上去
    2014-10-08 10:56 | 李凡

    # re: SpringMVC添加支持Http的delete、put請求[未登錄]  回復  更多評論   

    @李凡
    spring 的 轉換必須是POST請求,GET請求是不會轉的。
    2014-12-09 10:58 | 0

    # re: SpringMVC添加支持Http的delete、put請求  回復  更多評論   

    444
    2016-08-16 21:00 | 777
    主站蜘蛛池模板: 国产大片91精品免费观看男同| 91免费在线播放| xvideos亚洲永久网址| 国产91成人精品亚洲精品| 精品国产免费观看久久久| 日韩精品亚洲专区在线影视 | 中文字幕免费不卡二区| 久久精品国产精品亚洲下载| 精品免费久久久久国产一区| 国产亚洲无线码一区二区| 国产羞羞的视频在线观看免费| 亚洲AV本道一区二区三区四区| 成人免费福利视频| 久久亚洲国产最新网站| 国产美女a做受大片免费| 国产尤物在线视精品在亚洲| 亚洲国产精品尤物yw在线| 久久九九免费高清视频| 亚洲人成影院在线| 久久天天躁狠狠躁夜夜免费观看| 亚洲熟妇自偷自拍另欧美| 亚洲国产成人久久一区WWW| 免费无码又爽又刺激网站| 亚洲精品高清久久| 毛片免费视频播放| 国产福利电影一区二区三区,免费久久久久久久精 | 亚洲gay片在线gv网站| 亚洲国产精品日韩专区AV| 四虎国产精品免费永久在线| 亚洲无线一二三四区| 又黄又爽的视频免费看| 日韩a级无码免费视频| 亚洲人和日本人jizz| 亚洲M码 欧洲S码SSS222| 日韩精品人妻系列无码专区免费| 亚洲粉嫩美白在线| 国产精品亚洲美女久久久 | 免费无码又爽又高潮视频| 本免费AV无码专区一区| 亚洲六月丁香婷婷综合| 亚洲综合日韩久久成人AV|