Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 初始化列表的最佳实践?Autowire列表还是构造函数初始化?_Spring_List_Spring Mvc - Fatal编程技术网

Spring 初始化列表的最佳实践?Autowire列表还是构造函数初始化?

Spring 初始化列表的最佳实践?Autowire列表还是构造函数初始化?,spring,list,spring-mvc,Spring,List,Spring Mvc,嗨,我需要知道初始化列表的最佳实践, 这就是我现在正在做的 @Autowired private List<User> userList; 另一个选项是通过构造函数初始化 private List<User> userList; public UserDaoImpl() { userList = new ArrayList<>(); } 这些实现是在我的Dao类中实现的, 我应该遵循的最佳实践是

嗨,我需要知道初始化列表的最佳实践, 这就是我现在正在做的

    @Autowired
    private List<User> userList;
另一个选项是通过构造函数初始化

    private List<User> userList;


    public UserDaoImpl() {

        userList = new ArrayList<>();
    }
这些实现是在我的Dao类中实现的, 我应该遵循的最佳实践是什么

p、 我简化了代码,以便更加关注这个问题。谢谢

我更喜欢第一种选择。
如果用户列表无法自动连接,它将失败。

您能详细说明您的答案并考虑内存管理吗?我还注意到,第一种方法不允许列表具有多态性行为,例如,不允许列表具有ArrayList的实现—您可以注入所需的每个实现。退房: