spring MVCの実践は注意しなければならないところです。
spring mvcを使用してrestfulスタイルのインターフェースを提供し、前後端分離を実現し、後端はデータインターフェースだけを提供し、ページレンダリングをしない。そのため、インターフェースを統一的に処理することができます。パラメータチェックを要求する 応答データフォーマット グローバル異常処理 以上の統一処理により、開発者は業務処理に専念し、検査、異常応答の論理を分離することができる。
要求パラメータの検証:
urlのパラメータについて@Request Paramを追加したが、このパラメータを伝達しなかった場合、MissingServletRequest Parameter Exception異常 をスローする。@Maxなどの注釈を追加すると、この条件を満たしていないので、ContrantViolation ExceptionまたはBindExceptionの異常を投げ出します。
request body要求体におけるパラメータビーンの前に@Request Bodyを追加し、要求体がなければ、HttpMessage NotReadable Exception異常 をスローします。は、beanの前に@Validate注釈を追加し、beanの中に@Max、@NotNullなどの注釈を追加し、応答属性を検証し、満足しない場合はMethodArmement NotValid Exception を抛り出す。@Validate内にgroupを追加し、検証が必要な動作を示し、@Maxはgroupsを追加することができ、groupsがグループoupを含む場合、検証を行う。 Benにおいてもカスタム注釈が可能であり、ContrantValidatorインターフェースを実現することによって、カスタムチェックロジックが実現される。検証に失敗したら、MethodAgMentNotValid Exceptionが異常に投げられます。
これらの異常はグローバル異常処理でブロックされ、異常情報を返します。
応答データフォーマット:は、統合応答クラスJsonResp<T>を確立し、一般Tは業務応答内容であり、String、List、java beanなどとすることができる。属性resultを定義すると、応答コードコードコードコードコードコードコード情報msgが成功したかどうかを示します。ここでcodeおよびmsgはグローバル異常処理の応答エニュメレート・クラスに対応しています。 は、ResponseBodyhandlerがResponseBody Adviceインターフェースを実現するように定義し、応答タイプがjsonの場合、応答タイプがJsonseBodyAdviceクライアントに直接応答する。もしそうでないなら、new Jsons Respは応答体をセットしてクライアントに応答します。 でcontrollerでの方法復帰タイプは、String、List、java beanを任意に定義し、ResonseBodyhanderでは、統一JsonsResp形式に変換することができる。ストリームファイルであれば、そのまま返してもJsonResp形式にはなりません。このように応答を統一されたJsonRespデータフォーマットに包装することができ、先端処理に便利です。 グローバル異常処理は、エニュメレート・ResponseEnumに応答して、サービスに必要な応答コード及び応答コード情報 を定義する。カスタム異常クラスBaseExceptionを確立し、運転時の異常RuntimeExceptionを引き継ぎ、初期化時にResonseEnumを設定します。 異常捕捉類Global Exception Aspectを作成し、クラスに@Rest COntroller Adviceコメントを追加し、@Exceptionalを使ってパラメータチェック異常とカスタム異常BaseExceptionを捕捉します。 最外層はExceptionを捕捉し、未定義の異常 を捕捉する。業務エラーが発生した場合、throw new BaseException(Resonse Enum.xxx)は、カスタム異常を投げ、この異常はGlobal Exception Asppectによって捉えられ、クライアントに統一的に応答する。
異常応答コードを統一して定義し、確認しやすいです。
業務コードに異常な応答を避けるため、コードを簡略化する。
これらの統一処理の本質は、flitorまたはaopブロッキング要求および応答パラメータを用いて汎用論理処理を行うことである。したがって、要求に対して敏感語フィルタリングを行い、パラメータを復号するなどの処理を行い、トラフィック論理を結合することができる。
以上がspring MVC実践の注意すべきところの詳細です。spring MVC実践に関する資料は他の関連記事に注目してください。
要求パラメータの検証:
urlのパラメータについて
応答データフォーマット:
業務コードに異常な応答を避けるため、コードを簡略化する。
これらの統一処理の本質は、flitorまたはaopブロッキング要求および応答パラメータを用いて汎用論理処理を行うことである。したがって、要求に対して敏感語フィルタリングを行い、パラメータを復号するなどの処理を行い、トラフィック論理を結合することができる。
以上がspring MVC実践の注意すべきところの詳細です。spring MVC実践に関する資料は他の関連記事に注目してください。