Я разрабатываю загрузочное приложение Spring, в котором разные службы отвечают на один запрос.Я определяю сервисы, которые обслуживают запрос, получая serviceId из запроса.
Прямо сейчас я использую регистр Switch, чтобы определить тип запроса и соответственно вызывает сервис.
@RestController
@RequestMapping("/app")
public class ApiController{
@Autowired
Service service;
@RequestMapping(value = "/service", method = RequestMethod.POST, consumes = { "application/json" })
public ResponseEntity<ResponseModel> processAPIRequest(@RequestBody ApiRequest req){
String serviceId = req.getServiceId();
ResponseModel resp = new ResponseModel();
switch (serviceId.trim()) {
case "SER0001":
resp = service.getDetails01(req);
break;
case "SER0002":
resp = service.getDetails03(req);
break;
case "SER0030":
resp = service.getDetails30(req);
break;
return resp;
}
}
In Above, что должноЯ использую для лучшей производительности?Оператор переключения или создание нового метода, который обслуживает каждый запрос путем добавления serviceId в URL?например, @RequestMapping(value = "/service/serviceId", method = RequestMethod.POST, consumes = { "application/json" })