Spring中对set方法的命名的限制
如果属性名称为name,set方法是否一定要是setName
类推:属性名称为id,set方法是否一定要是setId
请问Spring对bean类是不是要求这种命名规范
还是说随便命名都可以
------解决方案--------------------6楼说的很对,对于spring的依赖注入和你的属性名称没一点关系它是根据你的写方法也就是set方法的名称
例如你类中有个属性private String name;
public void setMyName(String name) {
this.name = name;
}
可以看到属性和它的写方法并不是按照常规那样去定义,如果你spring配置文件中有id名称为myName的话它会通过反射调用setMyName方法将bean注入进去,这时候实际上你name属性就有值了,可以看出来spring的注入和你的属性名称没任何关系它和你的写方法的名称有关系。
但是通常情况我们都会以属性的名称去定义生成读和写方法,很少会看到读和写方法与属性名称不一致的吧。也不建议那样做啊,
------解决方案--------------------LZ我之前也很好奇这个命名规则问题,今天去试了一下(spring3.0),如果定义String类型的username
配置了XML如下:
XML code
<property name="username" value="abcde"></property>