利用できる典型的なオプションは 3 つあります。
オブジェクト変数をリクエストに渡す
これは、多数の変数がない場合や、Registration_BE のフィールドのサブセットのみを入力する機能が必要な場合に役立ちます。
変数を通常の POST としてリクエストに渡したい場合Registration_BE
は、最初に複雑なオブジェクトを構築するために何らかの処理を行う必要があります。
public String getText(@RequestParam("reg_be.myvariable") String myvariable) {
Registration_BE reg_be = new Registration_BE(myvariable);
System.out.println("websevice:" +reg_be.myvariable);
return reg_be.myvariable;
}
そして、あなたはそれを呼び出すことができます:
http://192.168.1.1:8084/UnionClubWS/webresources/customerregistration/?reg_be.myvariable=myvalue
または、代わりに変数の配列を渡すことによって:
public String getText(@RequestParam("reg_be.myvariable") String[] myvariables) {
Registration_BE reg_be = new Registration_BE(myvariables);
System.out.println("websevice:" +reg_be.myvariable);
return reg_be.myvariable;
}
そして、あなたはそれを呼び出すことができます:
http://192.168.1.1:8084/UnionClubWS/webresources/customerregistration/?reg_be.myvariable=myvalue1®_be.myvariable=myvalue2
共通データ交換フォーマットの使用
2 番目のオプションは、登録オブジェクトを JSON (または XML) として渡すことです。このためには、Jackson メッセージ コンバーターを有効にし、 Jackson ライブラリがクラスパスにあることを確認する必要があります。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<mvc:annotation-driven />
</beans>
あなたの方法は変わりません:
public String getText(@RequestParam("reg_be") Registration_BE reg_be ) {
System.out.println("websevice:" +reg_be.myvariable);
return reg_be.myvariable;
}
そして、次のように呼び出すことができます:
http://192.168.1.1:8084/UnionClubWS/webresources/customerregistration/?reg_be={"myvariable":"myvalue"}
カスタム メッセージ コンバーター
3 番目の最も複雑なオプションは、独自のメッセージ コンバーターを作成することです。これにより、最も柔軟性が得られます (リクエストは好きな形式を取ることができます) が、それを機能させるには、より多くのボイラープレート オーバーヘッドが必要になります。
リクエスト パケットの作成方法について非常に具体的な要件がない限り、上記のオプションのいずれかを選択することをお勧めします。