我看到Spring具有@Required批注,以标记必须设置的bean中的成员变量。

是否有使用此最佳实践?

例如,在构造函数中设置这些值并明确指定这些参数(尤其是在Spring之外使用时)会更好吗?

谢谢!

最佳答案

虽然不直接引用 @Required 批注,但Martin Fowler提供了this advice ...

他更喜欢在构造函数中而不是在setter中设置对象值,因为它将“清楚地说明在有效位置创建有效对象的含义”,同时还“允许您清楚地隐藏任何不可变的字段”通过根本不提供二传手”。

10-08 18:09