Эффективное заполнение POJO большим количеством геттеров и сеттеров - PullRequest
0 голосов
/ 23 марта 2011

У меня есть POJO, который представляет все свойства моего приложения.Он содержит огромное количество строковых типов и логических значений (переменные класса и их методы получения / установки).

Проблема в том, что каждый раз, когда добавляется новое свойство, мне нужно добавить переменную, метод получения, установщик, код, который устанавливает его при загрузке файла свойств, и код, который использует метод получения.

Моя идея состояла в том, чтобы преобразовать это в getString(String stringToGet), getInt и getBoolean метод, который извлекает из 3 хэш-карт.Проблема в том, что я больше не могу использовать EL для получения свойств, например.${Properties.telephoneNumber}

У кого-нибудь есть еще идеи?

Ответы [ 3 ]

3 голосов
/ 23 марта 2011

Начиная с JSF 2.0, вы можете вызывать методы с параметрами в EL:

#{properties.getString('telephoneNumber')}
3 голосов
/ 23 марта 2011

Если у вас есть класс, который вы абсолютно уверены, что получите / установите для каждой переменной, я бы просто сделал переменные общедоступными.Обычно причина этого не в том, если вы захотите изменить реализацию или изменить имена переменных или что-то в этом роде.Если вы ЗНАЕТЕ, что этого не произойдет, я бы изменил доступ к общедоступным.

Кроме того, если вы используете Eclipse (возможно, другие IDE, но я не знаком с ними), этоЯ могу автоматически создавать методы get / set для вас, так что это не должно быть хлопотом.

Я бы не использовал предложенное вами решение.Это исключило бы удобство автозаполнения, которое особенно необходимо, когда есть много методов / переменных.

1 голос
/ 23 марта 2011

Используйте вашу IDE для генерации всех этих сеттеров и геттеров.

...