Короче говоря, я хочу знать, есть ли способ создать класс параметров и проверить их по аннотации.
Типичная таблица параметров должна быть:
Таблица
| id | имя_парам | param_value |
class Parameter {
int id;
String paramName;
String paramValue;
// ...
}
Но при этом типичном способе я должен сделать param_value как String (для универсального назначения). Ежемесячные деньги, период подписки, адрес компании ... все одного типа: строка.
Это нормально, но я хочу использовать Spring Annotation Validation для параметров. Если бы я рассматривал все param_value как пары строк, я бы не смог проверить их по аннотации (например, @Min(0) int monthlyMoney
). Это означает, что я должен проверить их все вручную, что не изящно.
Другая причина, по которой мне не нравится это решение, состоит в том, что я уже точно знаю, что параметр monthMoney должен быть int; но все равно объявить их как строку. Это нелогично.
Кроме того, я могу преобразовать статический параметр в таблицу, например:
class ParameterNew {
int id;
int monthlyMoney;
String companyAddress;
}
Таким образом, я могу легко проверить их по аннотации. Но у этого подхода есть недостаток: в настоящее время я использую Hibernate, и для хранения ТОЛЬКО 1 ТРУБЫ потребуется целая таблица.
Поддерживает ли Spring какие-либо функции для такого рода управления параметрами?