ホームページ Java &#&チュートリアル SpringMVC で一般的に使用されるアノテーション タグの包括的な概要

SpringMVC で一般的に使用されるアノテーション タグの包括的な概要

Sep 17, 2018 pm 05:24 PM
springmvc

この記事は、SpringMVC でよく使用されるアノテーション タグの概要を示したものです。必要な方は参考にしていただければ幸いです。

1、SpringMVC の @Controller
、コントローラー コントローラーは DispatcherServlet による処理を担当します 分散リクエスト。ビジネス処理層で処理された後、ユーザーがリクエストしたデータをモデルにカプセル化し、そのモデルを対応するビューに返します。 プレゼンテーションを行います。 SpringMVCでは非常にシンプルな定義のControllerが提供されています メソッドを使用する場合、特定のクラスを継承したり、特定のインターフェイスを実装したりする必要はありません。 @Controller を使用してクラスをコントローラーとしてマークするだけです。 次に、@RequestMapping や @RequestParam などのいくつかのアノテーションを使用して、URL リクエストとコントローラーを定義します。 メソッド間のマッピング、このようなコントローラーは外部からアクセスできます。さらに、Controller は HttpServletRequest に直接依存しません。 HttpServletResponse およびその他の HttpServlet オブジェクトは、コントローラーのメソッド パラメーターを通じて柔軟に取得できます。 ######@コントローラ クラスをマークするために使用されます。これでマークされたクラスは SpringMVC コントローラーです。 物体。ディスパッチ プロセッサは、アノテーションが付けられたクラスのメソッドをスキャンし、メソッドに @RequestMapping アノテーションが付けられているかどうかを検出します。 @コントローラ コントローラー クラスを定義するだけで、@RequestMapping アノテーションが付けられたメソッドが実際にリクエストを処理するプロセッサーになります。 @Controllerを使用するだけです クラスをマークしても、現時点では Spring がそれを認識していないため、それが SpringMVC のコントローラー クラスであるとは言えません。それで、春をどうするか どうすればそれを認識できるのでしょうか?この時点で、このコントローラー クラスを Spring に渡して管理する必要があります。方法は2通りあります。

(1) SpringMVC設定ファイルにMyControllerのBeanオブジェクトを定義します。

(2) SpringMVC 設定ファイルで、@Controller とマークされたコントローラーの場所を Spring に指示します。

<!--メソッド 1-->

<bean class="com.host.app.web.controller.MyController"/>

<!--メソッド2-->
< context:component-scan base-package = "com.host.app.web" />//パスはコントローラーの上位層に書き込まれます (以下の簡単な分析を参照)スキャン パッケージの詳細については)


2. @RequestMapping

RequestMapping は、リクエスト アドレス マッピングを処理するために使用されるアノテーションであり、クラスまたはメソッドで使用できます。クラスで使用すると、リクエストに応答するクラス内のすべてのメソッドがこのアドレスを親パスとして使用することを意味します。

RequestMapping アノテーションには 6 つの属性があります。以下では説明のために 3 つのカテゴリに分けます (対応する例は以下にあります)。

①. 値、メソッド;

値: リクエストの実際のアドレスを指定します (後で説明します)。 Method: リクエストされたメソッドのタイプ (GET、POST、PUT、DELETE など) を指定します。 application/json 、 text/html;

などのリクエスト: 返されるコンテンツ タイプを指定します。リクエスト ヘッダーの (Accept) タイプに指定されたタイプが含まれる場合にのみ返されます。

#③. params、headers

params: このメソッドで処理される前に、指定されたリクエストには特定のパラメータ値が含まれている必要があります。

headers: このメソッドがリクエストを処理するには、指定されたリクエストに特定の指定されたヘッダー値が含まれている必要があります。

3. @Resource と @Autowired

@Resource と @Autowired は両方とも Bean インジェクションに使用されます。実際、そのパッケージは javax です。 .annotation.Resource をインポートする必要がありますが、Spring はこのアノテーションの挿入をサポートしています。

共通点

#フィールドとセッター メソッドの両方を記述することができます。両方がフィールドに記述されている場合は、セッター メソッドを記述する必要はありません。

違い

(1)@Autowire

@AutowiredはSpringのアノテーションを提供しており、org.springframework.beans.factory.annotation.Autowiredのパッケージのみをインポートする必要があります。 byType インジェクション。

1394306870b5ba9fbf7fc86a1fa139a5

注意:本人尝试时无论哪种情况<context:include-filter>和<context:exclude-filter>都不能同时存在。

以上がSpringMVC で一般的に使用されるアノテーション タグの包括的な概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

SpringBootとSpringMVCの比較と差異分析 SpringBootとSpringMVCの比較と差異分析 Dec 29, 2023 am 11:02 AM

SpringBootとSpringMVCの比較と差異分析

SpringBoot と SpringMVC の違いは何ですか? SpringBoot と SpringMVC の違いは何ですか? Dec 29, 2023 am 10:46 AM

SpringBoot と SpringMVC の違いは何ですか?

SpringBoot と SpringMVC の違いは何ですか? SpringBoot と SpringMVC の違いは何ですか? Dec 29, 2023 pm 05:19 PM

SpringBoot と SpringMVC の違いは何ですか?

Java API開発におけるWebサービス処理にSpringMVCを利用する Java API開発におけるWebサービス処理にSpringMVCを利用する Jun 17, 2023 pm 11:38 PM

Java API開発におけるWebサービス処理にSpringMVCを利用する

springboot と springmvc の違いは何ですか springboot と springmvc の違いは何ですか Jun 07, 2023 am 10:10 AM

springboot と springmvc の違いは何ですか

JavaのSpringMVCインターセプターの使い方 JavaのSpringMVCインターセプターの使い方 May 13, 2023 pm 02:55 PM

JavaのSpringMVCインターセプターの使い方

springbootとspringmvcの違いは何ですか springbootとspringmvcの違いは何ですか Dec 28, 2023 pm 03:22 PM

springbootとspringmvcの違いは何ですか

インタビュアー: あなたが言及した SpringMVC リクエスト処理プロセスはインターネットからコピーされたものですよね? インタビュアー: あなたが言及した SpringMVC リクエスト処理プロセスはインターネットからコピーされたものですよね? Jul 26, 2023 pm 04:34 PM

インタビュアー: あなたが言及した SpringMVC リクエスト処理プロセスはインターネットからコピーされたものですよね?

See all articles