日期:2014-05-19  浏览次数:20755 次

Spring的配置问题
我在Spring注册了一个bean,指向的一个class里设置了一个static变量,并且也写了setter,但我在配置文件里给这个static设置值,程序会报错,NotWritablePropertyException,为什么?怎样才能给static变量賦值,写在配置文档里

------解决方案--------------------
不懂,up
------解决方案--------------------
spring可以设置单例,好像没提供static相关的方法
------解决方案--------------------
static是属于类的,在第一次用到这个类的时候就已经初始化好了,所以我认为这样注入不可行
期待高手发表意见
------解决方案--------------------
你的setter是static的吗?如果是的话是不可以的,必须是非static的才行!
------解决方案--------------------
static变量在JVM加载Class时便放入方法区中了。实例化时是无法赋值的,这无论是不是Spring都做不到。

在java中static的作用就相当于是全局变量的意义。