今天在做几个报表,s1sh,配置spring,我的 service 里的dao 都定义为形似
private TwaterDAO tWaterDao;
然后习惯性用myeclipse生成get set方法,一共有四个这样的service
主要是set方法:
private TwaterDAO tWaterDao; public void setTWaterDao(TwaterDAO tWaterDao){ this.tWaterDao=tWaterDao; }
在spring的配置文件里确保正确配置了,结果在启动应用初始化到这一起,这个service就是不能创建,说TwaterDao没有set方法....找了几个同事也没能解决,确保配置及代码都到位了.结果把
private TwaterDAO tWaterDao; 改为 private TwaterDAO waterDao;//即把前面的t去掉,再重新写set方法 public void setwaterDao(...){ .... }
相应的spring中也改名,结果可以了,莫非前面带个t就不能识别set方法了?
这是JavaBean的基本要求,也是有可能让大家不小心犯错的地方:
其实从JavaBean的规范本身来讲,应当说的也比较含糊,导致大家都比较迷糊:)
对于JavaBean的属性xxx来讲,
setXxx
getXxx
天经地义
对于boolean类型则可以
isXxx
命名方面来讲,第一个字母一定要小而,而且随后的字母也要为小写,直到下一个单词的第一个字母开始,应为大写。同时,要注意的是,下划线最好也不要使用。
比如:username、password、codeNo、myHome之类的,
于来问题来了,有人说,我是X-Man啊,于是取了一个xMan,那。。。你就太X了啦。
对于属性来讲,是取有意义的单词,你来个xMan可不是单词啊,你又说我就是牛X我的属性就一个x啊,然后再加个Man,可注意了,你x不x不是你说了算,你x也只是个字母,不能算单词,于是你再怎么X-Man的话,也就委屈一下成为xman吧。。。
于是乎,对于JavaBean来讲,第一个与第二个字母都给我小写之。。。
以上纯属字面意义上面来讲,技术层面的代码也可以说明这个问题的。。。
另外推荐一篇很好的文章:
The Unknown JavaBean:
[url]http://weblogs.java.net/blog/rbair/archive/2006/05/the_unknown_jav.html[/url]
大小写要遵循java bean的命名规范
关于这个问题,这里有较为详细的讨论可以看看:
http://www.iteye.com/topic/103184
跟T没关系...开头的几个字母最好都是小写...
大小写要遵循java bean的命名规范
规则还是要遵守比较好,方便自己也方便他人
命名,第二个字母绝对不可以大写,否则判断不出来名称。 这不是spring的bug,使自己的命名问题
跟t没有关系,你的tWaterDao是不是已经被用了?