#@requestparam -www-form-urlencodedエンコードされたコンテンツ。 (HTTP プロトコルでは、Content-Type が指定されていない場合、デフォルトで渡されるパラメーターは application/x-www-form-urlencoded タイプです)
#@RequestBody•GET リクエストでは、HttpEntity がないため、@RequestBody は適用されません。
•POST リクエストでは、HttpEntity を介して渡されるパラメータは、リクエスト ヘッダーでデータ型 Content-Type を宣言する必要があります。SpringMVC は、 HandlerAdapter で構成された HttpMessageConverters を使用して HttpEntity のデータを解析します。次に、対応する Bean にバインドします。 #概要 •GET リクエストでは @RequestBody は使用できません。•POST リクエストでは @RequestBody と @RequestParam を使用できますが、@RequestBody を使用する場合はパラメータ変換の設定を統一する必要があります。
たとえば、SpringMVC で構成された HttpMessageConverters 処理スタックで、JSON 変換形式を指定します。たとえば、Date が 'yyyy-MM-dd' に変換される場合、含まれるフィールドはパラメータ受信オブジェクト内で Date 型の場合、クライアントは年、月、日の形式のみを渡すことができますが、時、分、秒は渡すことができません。
インターフェイスが異なると、そのパラメーターの時間パラメーターの形式要件が異なる場合があるため、そうすると、クライアントの呼び出し元の同僚がパラメーターの形式について少し混乱するため、スケーラビリティは高くありません。
@RequestParam を使用してパラメーターを受け入れる場合は、パラメーターを受け入れるモデルで @DateFormat を設定して、受け入れる必要がある時間パラメーターの形式を指定できます。
さらに、@RequestBody を使用して受け入れられたパラメータは、サーブレットによって変換されず、リクエスト オブジェクトの Param パラメータ セットに配置されます。@RequestParam は受け入れられます。
Java 関連の技術記事をさらに詳しく知りたい場合は、java チュートリアル
列にアクセスして学習してください。以上がrequestbody と requestparam の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。