<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 初一七月 閱讀(9434) 評論(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在线老王精品免费播放| 中文字幕在线免费视频| 精品国产sm捆绑最大网免费站| 日韩亚洲人成在线综合日本| 99精品免费视频| 久久久久亚洲精品美女| 久久这里只精品热免费99| 黑人精品videos亚洲人| 国产精品免费观看调教网| 亚洲一区二区在线视频| 久草视频免费在线| 亚洲欧美乱色情图片| 国产成人3p视频免费观看| 免费人成视频在线观看免费| 久久精品国产亚洲精品| 永久免费av无码入口国语片| 久久久久亚洲AV无码专区体验| 国产免费的野战视频| 亚洲精品无码国产片| 亚洲男人天堂2020| 国产拍拍拍无码视频免费| 亚洲高清美女一区二区三区| 国产精品免费观看久久| 国产亚洲成在线播放va| 中文字幕久久亚洲一区| 在线看片免费人成视久网| 久久亚洲精品国产精品婷婷 | 亚洲香蕉久久一区二区| 免费无码又黄又爽又刺激| 羞羞漫画页面免费入口欢迎你 | 亚洲AV无码一区二三区 | 亚洲avav天堂av在线网爱情| 成人激情免费视频| 亚洲精品黄色视频在线观看免费资源| 亚洲国产精品一区二区成人片国内 | 国产亚洲精品第一综合| 亚洲AV无一区二区三区久久| 精品熟女少妇AV免费观看| a免费毛片在线播放| 亚洲国产精品综合久久网各| 免费一级毛片不卡不收费|