私は、いくつかのREST呼び出しで使用したいJavaコードの既存のサービス層を持っています。私がこれをやりたいのは、ユーザーがURLのサービスIDを渡してから、バックエンドでサービスとメソッド(DBまたは設定ファイル内)を検索して呼び出すことです。たとえば、このURLが呼び出されるとSpringでREST呼び出しを使用してサービス層を公開する
、私は「車」のサービスIDを取得し、CarServiceを呼び出します。
car=com.foobar.services.CarService
house=com.foobar.services.HouseService
etc..
Springを使ってこれを行う方法はありますか?私が持っている懸念は、サービスを呼び出すことではなく、どのメソッドを呼び出すかを理解することです。 http://foobar.com/services/car/redへの呼び出しがあった場合、どのメソッドを 'red'のメソッドパラメータに渡して、どのメソッドを呼び出すかを決定します。ここで
が、これはJavaでどのように見えるかの例です:
@RequestMapping(value = "{serviceId}")
@ResponseBody
public Object getMarshalledObject(@PathVariable String serviceId) {
if ("car".equals(serviceId)) {
return getCar();
}
throw new ServiceNotFoundException("Service ID not found.");
}
あなたの質問から、あなたのURLから値 'red'を抽出する方法、またはあなたのサービスの引数として' red'値を使用する方法はありますか? –