У этого есть две стороны,
На самом деле проблема с производительностью близка к нулю.Это имеет отношение к чему-то с читабельностью .
- Первое представление - сохранять значения в виде собственных строк в контроллерах.
Это более читабельно в том смысле, что вы можете напрямую проверять точный маршрут API при входе в контроллер. - Второе представление хранит его в каком-то другом файле с
static
константами.
Сохранение всех таких маршрутов фактически дает вам одно общее место, где вы можете узнать все маршруты API, которые вы в настоящее время поддерживаете в своем приложении.
Я лично предпочитаю второй, т.е. хранить все пути в файле с именем APIRoutes и далее разделить на домены.
public class APIRoutes {
public class SYSTEM {
public static final String HEALTH_CHECK = "api/v1/healthcheck";
public static final String LB_HEALTH_CHECK = "lb/v1/healthcheck";
}
public class API {
public static final String SAVE_X = "api/v1/save";
public static final String GET_X = "api/v1/get";
}
public class CACHE {
public static final String RELOAD_X = "cache/v1/load/x";
public static final String RELOAD_Y = "cache/v1/load/y";
}
}
Таким образом, в вашем контроллере , у вас естьчто-то вроде
@RequestMapping(method = RequestMethod.GET, value = APIRoutes.API.SAVE_X)