【问题标题】:Code quality - order of @Autowired member variables? [closed]代码质量 - @Autowired 成员变量的顺序? [关闭]
【发布时间】:2015-05-12 07:45:31
【问题描述】:

当还使用来自spring 的注入@Autowired@Value 注释时,您将如何排序成员变量字段?

您是否将以下示例视为最佳实践?

public class MyExample {
    private static final Logger logger;
    private static final int STATIC_VAR = 1;

    @Autowired
    private WebService service;

    @Value("${my.property}")
    private String property;

    //to be set by setter or constructor
    private MailService mail;
}

【问题讨论】:

  • 我不考虑注解,我按类型封装变量。无论如何,它主要是基于意见的。

标签: java spring code-conversion


【解决方案1】:

我不确定实例成员的顺序是否真的很重要。也就是说,我喜欢通过构造函数设置它们,以便它们可以是最终的:

public class MyExample {

  private static final Logger logger;
  private static final int STATIC_VAR = 1;

  private final WebService service;

  private final String property;

  private final MailService mail;

  @Autowired
  public MyExample(WebService service, @Value("${my.property}") String property) {
    this.service = service;
    this.property = property;
    mail = new MailService();
  }

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-10
    • 1970-01-01
    • 2010-09-08
    • 1970-01-01
    相关资源
    最近更新 更多