2017-10-08 211 views
0

我不知道是否有理由将Spring bean的私有属性标记为static?让我们来看看下面的春季豆 - 为什么我的私人领域是静态的?

@Component 
public class SomeSpringBean { 

    private Map<String, String> myMap = new HashMap<>(); 

    public String doSomeCalculations() { 
     //some logic, getting values from map, doing some calculations 
     return someVal; 
    } 
} 

当然的Spring bean是一个单身,所以我为什么将标志着作为MYMAP static?我在很多项目中看到过这个,但是找不到那么好的理由。

回答

3

我认为这样做的唯一原因是让没有经验的开发人员明白只有一个变量实例。然而,Spring Beans不一定是单身人士,所以这对于一些bean定义来说会打破。

因此,我会认为这是不好的做法,并避免它。