ホームページ >Java >&#&チュートリアル >双方向シリアル化のために JQuery、Spring MVC の @RequestBody、および JSON を統合するにはどうすればよいですか?

双方向シリアル化のために JQuery、Spring MVC の @RequestBody、および JSON を統合するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-05 20:32:10635ブラウズ

How to Integrate JQuery, Spring MVC's @RequestBody, and JSON for Bidirectional Serialization?

JQuery、Spring MVC @RequestBody、および JSON – 連携させる

JQuery を使用するために Java オブジェクトを JSON にシリアル化するのは簡単かもしれませんが、逆のパス、つまり解析を行う必要があります。 JSON とそれを Java オブジェクトに変換することは、課題を引き起こす可能性があります。この記事では、この双方向シリアル化を実現するために必要な手順について説明します。

問題: @RequestBody を使用した JSON から Java へ

Spring MVC @RequestBody を使用して JSON を Java オブジェクトに逆シリアル化するには、MappingJacksonHttpMessageConverter を登録することが必須です。これは手動で行うこともできますが、最も簡単な方法は を使用することです。 XML では、Java では @EnableWebMvc です。

実際の例

次の例を考えてみましょう。これは、双方向 JSON シリアル化の完全なソリューションを示しています。

Maven POM

<!-- Spring MVC -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>3.0.5.RELEASE</version>
</dependency>
<!-- Jackson -->
<dependency>
    <groupId>org.codehaus.jackson</groupId>
    <artifactId>jackson-mapper-asl</artifactId>
    <version>1.4.2</version>
</dependency>

サーブレットマッピング

<servlet-mapping>
    <servlet-name>json</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

#### Spring Bean Configuration

<import resource="classpath:mvc-context.xml" />

#### `mvc-context.xml`

<mvc:annotation-driven />
<context:component-scan base-package="test.json" />

#### Controller

@Controller
@RequestMapping("/test")
パブリック クラス TestController {

@RequestMapping(method = RequestMethod.POST, value = "math")
@ResponseBody
public Result math(@RequestBody final Request request) {...}

}

#### Domain Objects

パブリック クラス リクエスト {

// ... fields and getters/setters ...

}

パブリック クラス 結果 {

// ... fields and getters/setters ...

}

#### Testing the Setup

Using the Poster Firefox plugin, send a POST request to the following URL:

URL: http://localhost:8080/test/math
mime タイプ: application/json
投稿本文: { "left": 13 , "right" : 7 }

#### Expected Response

{"加算":20,"減算":6,"乗算":91}

以上が双方向シリアル化のために JQuery、Spring MVC の @RequestBody、および JSON を統合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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