我有一個現有的Java代碼服務層,我想在一些REST調用中使用它。我想這樣做的方式是讓用戶在URL中傳遞服務標識,然後在後端查找服務和方法(在DB或配置文件中)並調用它。例如:在Spring中使用REST調用來公開服務層
當這個URL被調用時,我會採取 「車」 的服務ID,並調用CarService。我想我會有一個簡單的配置:
car=com.foobar.services.CarService
house=com.foobar.services.HouseService
etc..
有沒有辦法使用Spring來做到這一點?我擔心的一個問題是沒有調用服務,但是要確定要調用哪種方法。如果我打電話給http://foobar.com/services/car/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'作爲你服務的參數? – 2012-02-09 15:28:05