目次
@ResponseBody 属性: Spring MVC でのレスポンス Content-Type の制御
ホームページ Java &#&チュートリアル Spring MVC で @ResponseBody を使用して応答のコンテンツ タイプを制御するにはどうすればよいですか?

Spring MVC で @ResponseBody を使用して応答のコンテンツ タイプを制御するにはどうすればよいですか?

Oct 28, 2024 am 05:13 AM

How can I control the content type of the response with @ResponseBody in Spring MVC?

@ResponseBody 属性: Spring MVC でのレスポンス Content-Type の制御

Spring MVC では、@ResponseBody アノテーションはレスポンスのコンテンツ タイプを決定する際に重要な役割を果たします。クライアントに返送されます。このアノテーションは、JSON やプレーン テキストなどのカスタム応答を柔軟な方法で返す場合に役立ちます。

あなたの場合、コントローラー メソッドからの応答が正しく設定されていないという問題が発生しています。コンテンツのエンコーディング。これは Spring MVC のデフォルトの動作によるもので、戻り値に適したコンバータが見つからない場合は ISO-8859-1 エンコーディングにフォールバックします。

この問題を解決し、正しいコンバータを設定するにはコンテンツ タイプでは、@ResponseBody アノテーションの generated 属性を利用できます。この属性を使用すると、コントローラー メソッドが生成できるメディア タイプ (つまり、コンテンツ タイプ) を指定できます。

特定のケースでは、コントローラー メソッドで UTF-8 エンコーディングのプレーン テキストを生成する必要があります。これを実現する方法は次のとおりです:

<code class="java">@RequestMapping(value = "ajax/gethelp")
@ResponseBody
public String handleGetHelp(Locale loc, String code) {
    log.debug("Getting help for code: " + code);
    String help = messageSource.getMessage(code, null, loc);
    log.debug("Help is: " + help);
    return help;
}</code>
ログイン後にコピー

プロデュース = "text/plain; charset=utf-8" を @ResponseBody アノテーションに追加することで、Spring MVC にコンテンツ タイプを明示的に設定するように指示します。 utf-8 の文字セットを使用した text/plain への応答。これにより、レスポンスが正しくエンコードされ、クライアント側で適切に表示されることが保証されます。

@RequestMapping アノテーションは、対応するリクエスト マッピングで使用できるメディア タイプを制御するために使用できる、Producer 属性もサポートしていることに注意してください。ハンドル。

以上がSpring MVC で @ResponseBody を使用して応答のコンテンツ タイプを制御するにはどうすればよいですか?の詳細内容です。詳細については、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)

Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか? Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか? Mar 17, 2025 pm 05:35 PM

Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?

2025年のトップ4 JavaScriptフレームワーク:React、Angular、Vue、Svelte 2025年のトップ4 JavaScriptフレームワーク:React、Angular、Vue、Svelte Mar 07, 2025 pm 06:09 PM

2025年のトップ4 JavaScriptフレームワーク:React、Angular、Vue、Svelte

高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか? 高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか? Mar 17, 2025 pm 05:46 PM

高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?

Javaで機能的なプログラミング技術を実装するにはどうすればよいですか? Javaで機能的なプログラミング技術を実装するにはどうすればよいですか? Mar 11, 2025 pm 05:51 PM

Javaで機能的なプログラミング技術を実装するにはどうすればよいですか?

node.js 20:キーパフォーマンスが向上し、新機能 node.js 20:キーパフォーマンスが向上し、新機能 Mar 07, 2025 pm 06:12 PM

node.js 20:キーパフォーマンスが向上し、新機能

Iceberg:データレイクテーブルの未来 Iceberg:データレイクテーブルの未来 Mar 07, 2025 pm 06:31 PM

Iceberg:データレイクテーブルの未来

キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか? キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか? Mar 17, 2025 pm 05:43 PM

キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?

カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか? カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか? Mar 17, 2025 pm 05:44 PM

カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?

See all articles