0

我有一个 POJO,它代表了我的应用程序的所有属性。它包含大量的字符串整数和布尔值(类变量,以及它们的 getter/setter)。

问题是每次添加新属性时,我都必须添加变量、getter、setter、从加载属性文件中设置它的代码以及使用 getter 的代码。

我的想法是将其重构为从 3 个哈希映射中提取的getString(String stringToGet),getInt和方法。getBoolean这样做的问题是我不能再使用 EL 来获取属性,例如。${Properties.telephoneNumber}

有人有其他想法吗?

4

3 回答 3

3

如果您有一个绝对确定您将为每个变量获取/设置的类,我只会将变量公开。通常不这样做的原因是您可能想要更改实现或更改变量名称或类似的东西。如果您知道这不会发生,我会继续更改对公众的访问权限。

此外,如果您使用的是 Eclipse(可能是其他 IDE,但我不熟悉它们),它可以自动为您创建 get/set 方法,所以这不应该是一件麻烦事。

我不会使用您建议的解决方案。它将消除自动完成的便利性,这在有很多方法/变量时尤其需要。

于 2011-03-23T12:29:50.420 回答
3

从 JSF 2.0 开始,您可以在 EL 中调用带有参数的方法:

#{properties.getString('telephoneNumber')}
于 2011-03-23T12:52:49.773 回答
1

使用您的 IDE 生成所有这些 setter 和 getter。

于 2011-03-23T12:41:11.773 回答