springMVC日記(IV)

、安らかなスタイル

  1.各リソースのURIを表し

  2.クライアントは、GET、POST、PUTを使用して、DELETE4動詞は、サーバーリソースの動作の動作モードを示します。リソースを取得するために使用されるGET、POST、新たな資源のために(リソースを更新するためにも使用することができます)、リソースを更新するために使用されるPUT 、リソースを削除するには削除します。

  営業リソースのフォームを介して動作する3.資源。
  4.リソースの症状は、XMLやHTMLです。
  クライアントとサーバの間の相互作用は、クライアントからの要求が理解するために必要な情報が含まれている必要があり、サーバーへの各リクエスト要求間のステートレスです。
それは、特定の操作を使用して、それぞれが、複数のキーのみアクセスアドレス値に露出させることができるCRUDができます
安らかなスタイルのCRUD操作のためのユーザーのデモ(ID、名前、PW、TEL)、(ディスパッチャへのアドレス形式* .doという)
/ *のRESTful - >ユーザ/ 1.doの
方法:GET要求処理方法いることを示し
{ID}に割り当てられた1
( "UID" @PathVariableを使用して、{ID}(想定UID)とは異なるパラメータ名場合@PathVariable )
  * / 
@RequestMapping(値= "{ID}"、メソッド= RequestMethod.GET)// 示すそのパラメータはなく、パス パブリック文字列selectById(@PathVariable INT ID){ // 変数は、これがパスであることを示す のSystem.out.println( "selectByName ===" + ID); リターン "メイン" ; }

/user/.doを追加しました。問題の安らか.doというサフィックスを持つスタイルとJSPは、そうでない場合は、POSTリクエストのエラーを使用して報告されることはありません、ここで.doという追加する必要があります

@RequestMapping( "行う"値=、方法= RequestMethod.POST)
     パブリック文字列インサート(ユーザユーザ){ 
        System.out.printlnは(ユーザ)。
        戻る「メイン」
    }

入れて、削除の実施形態は、web.xml内に配置されたフィルタが必要

< フィルター> 
        < フィルタ名> hiddenHttpMethodFilter </ フィルタ名> 
        < フィルタクラス> org.springframework.web.filter.HiddenHttpMethodFilter </ フィルタリングクラス> 
    </ フィルタ> 
    < フィルタマッピング> 
        < フィルタ名> hiddenHttpMethodFilter </ フィルタ名> 
        < のurl-pattern > / * </ のurl-pattern > 
    </ のfilter-mapping >

変換ポストを置くか、または削除するには(「削除」)「置く」モード:要求では、必要にデータ_methodを追加します

値が値を追加することはできません/user/1.do修正、.doという

(値=「{ID}」、メソッド= @RequestMapping RequestMethod.PUT)を
    // responseBody @は、コンテンツの形式で結果を返すと結合されるように、唯一のAjax PUT要求である
    パブリック文字列更新(@PathVariable整数ID、ユーザユーザ){ 
        System.out.printlnは(ユーザー + "に従って" + ID);
         リターン "メイン" ; 
    }

/user/1.do、この値は、値を追加することはできません.doという

(値= "{ID}"、方法= @RequestMapping RequestMethod.DELETE)を
    @ResponseBody 
    パブリック文字列の削除(@PathVariable整数ID){ 
        するSystem.out.println( "删除ID" + ID)。
        戻る「メイン」
    }

 

二、springmvc例外処理

今注釈を使用@ExceptionHandler

  クラスを追加する1.controller方法

@ExceptionHandler
     公共のModelAndViewエラー(例外例外){ 
        のModelAndViewのMV = 新規のModelAndView()。
        mv.addObject( "エラー" 、exception.getMessage()); 
        mv.setViewName( "エラー" ); 
        System.out.println( "局部处理异常" );
        返すMVを。
    }

  2.クラスのコントローラに加え、世界的なメモを追加

@ControllerAdvice
 パブリック クラスExceptionController { 
    @ExceptionHandler 
    公共のModelAndViewエラー(例外例外){ 
        のModelAndViewのMV = 新規のModelAndView( "エラー" )。
        mv.addObject( "エラー" 、exception.getMessage());
        返すMVを。
    } 
}

例外に捕捉例外がメソッドに転送されると、例外情報を収集し、例外ページに転送されます。しかし、もっと安らかなスタイルメソッドが例外ページ、一時的な方法にジャンプすることができない、一般的な問題が解決しない方法はそのようなではありません

 三、springmvc共通コメント

 @Controller:クラスラベルクラスは、制御層です。

 @RequestMappint:要求されたアドレスをマーク

 @ResponseBody:JSONオブジェクトにJavaオブジェクト。

 @Valid:注釈データをチェック

 @PathVariable:送付方法URIを割り当てられたパラメータ値を受け取ります

 @SessionAttributes:セッション名フィールドに格納された設定し、デフォルトのキー値

@RequestParam:パラメータマッピング名として値リクエストパラメータ名を、パラメータが必要な場合に必要な;はdefaultValueパラメータ設定要求のデフォルト値

@ExceptionAdvice:クラスラベルクラスの例外処理

@ExceptionHandler:標識法は、例外処理のための方法です。

@InitBinder:処理パラメータの日時

おすすめ

転載: www.cnblogs.com/psxfd4/p/11470583.html