コピー2022.03.01こんにちは。たいら(@tairaengineer2)です。転職を繰り返し現在4社経験している、10年目エンジニアです。SpringBootでURLとクラスやメソッドをマッピングできる@RequestMappingアノテーションについて@RequestMappingアノテーションとは@RequestMappingアノテーションを使ったサンプルプログラムと、丁寧に解説していきます。前提:実施している環境@RequestMappingアノテーションとは@RequestMappingアノテーションの属性:value属性@RequestMappingアノテーションの属性:method属性@RequestMappingアノテーションを解説するプログラムの概要Javaサンプルプログラム実行結果まとめ:@RequestMappingアノテーションを使ってみよう!前提:実施している環境この記事では、以下の環境で行っています。IDEAを使っています。Bootプロジェクトを新規作成するやり方はこちらの記事をご参考ください。Bootプロジェクトを新規作成するやり方を解説しますこの記事ではC:\SpringBootSample配下に「SpringSample」という名前のプロジェクトを作っています。@RequestMappingアノテーションとは@RequestMappingアノテーションとは、URLとコントローラーのクラスまたはメソッドを紐づけることができるアノテーションです。org.springframework.web.bind.annotation.RequestMapping;をインポートする必要があります。@RequestMappingアノテーションの使い方サンプルは以下になります。処理}指定できる属性のvalue属性method属性について、それぞれ詳しく解説します。@RequestMappingアノテーションの属性:value属性@RequestMappingアノテーションの属性のvalue属性は、メソッドやクラスに紐づけるURLのパスを指定する属性です。処理}だと【http://localhost:8080/sample】というURLとsampleメソッドを紐づける、という意味です。最初の「/」は省略してもOKです。処理}と、属性名の「value」を省略してもOKです。value属性には複数のURLのパスを指定することもできます。この場合http://localhost:8080/samplehttp://localhost:8080/testのURLのパスとsampleメソッドを紐づけています。@RequestMappingアノテーションの属性:method属性@RequestMappingアノテーションの属性のmethod属性は、GET、POSTといったHTTPリクエストを指定する属性です。処理}だと【http://localhost:8080/sample】のURL、かつGETリクエストだとsampleメソッドに紐づける、という意味です。method属性に指定できるものは以下になります。org.springframework.web.bind.annotation.RequestMethod;をインポートする必要があります。method属性はクラスに@RequestMappingアノテーションつける場合は、指定しません。次の章で実際に使ってみます。@RequestMappingアノテーションを解説するプログラムの概要@RequestMappingアノテーションを解説するプログラムでは、value属性にURLのパスを2つ、method属性でGETを指定したメソッドを1つ作成します。value属性に指定したURLのパス2つともでアクセスできることmethod属性に指定しなかったPOSTでアクセスできないことを確認します。解説で使うJavaプログラムは、SpringSample\src\main\java\com\example\SpringSample配下にある【SpringSampleApplication.java】を使います。実行タブから実行ガターから実行の3種類あるので、いずれかで実行します。詳しい解説は以下の記事をご参考ください。IDEA】SpringBootプロジェクトを実行するやり方を解説します今回、確認するにあたりPostmanというツールを使います。Postmanの基本的な使い方については、こちらの記事をご参考ください。【Postman】基本的な使い方を解説しますまず、「value属性に指定したURLのパス2つともでアクセスできること」を確認します。World!が返されているので、アクセスできていることが確認できました。World!と同じレスポンスが返ってきているので、アクセスできていることが確認できました。"/aaa"}と、このURLは存在しないとエラーが返ってきているので、アノテーションで指定していないURLにはアクセスできていないことが確認できました。2つ目の「method属性に指定しなかったPOSTでアクセスできないこと」を確認します。"/hello"}と、このURLではPOSTは受け付けないとエラーが返ってきているので、アノテーションで指定していないPOSTではアクセスできていないことが確認できました。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。ΔホームプログラムJavaプロフィールこのブログを運営しているたいらと言います。プログラム言語を合計5言語経験している12年目エンジニアのブロガーです。このブログでは、どこよりも分かりやすくプログラムやツールのインストール方法などを解説し、エンジニアにの疑問解決に役立つ情報を発信します。お問い合わせなどがありましたら、下記のリンクからお願いします。お問い合わせこちらから記事の検索ができます。IDEAXAMPPお問い合わせホーム検索トップサイドバータイトルとURLをコピーしました。