spring的配置文件注入问题 70
spring新手,学了配置文件注入属性这里。测试的时候,context.getbean()能获取得到,debug也显示dao属性和service属性已经被存放在conte...
spring新手,学了配置文件注入属性这里。测试的时候,context.getbean()能获取得到,debug也显示dao属性和service属性已经被存放在context中了。然后点击登录访问LoginAction就会报空指针异常。
但是如果把aaaa改成dao,把bbbb改成service(和类里面的属性名字一样)就能正常登录。
就是说源bean的id和被注入的bean的name、ref一样(并且和被注入的类中的属性比如dao、service名字相同),就不会报错。
请问这三个:id、name、ref一定要相同的名字吗?
我开始以为是源bean的id和被注入的bean的ref相同、
然后被注入的bean中有个属性并且这个属性的名字和被注入的bean的name一样就可以了。(如上图)
请好心人帮忙看看解答一下。
谢谢。
有类似经历的朋友吗?请帮我解答一下。 展开
但是如果把aaaa改成dao,把bbbb改成service(和类里面的属性名字一样)就能正常登录。
就是说源bean的id和被注入的bean的name、ref一样(并且和被注入的类中的属性比如dao、service名字相同),就不会报错。
请问这三个:id、name、ref一定要相同的名字吗?
我开始以为是源bean的id和被注入的bean的ref相同、
然后被注入的bean中有个属性并且这个属性的名字和被注入的bean的name一样就可以了。(如上图)
请好心人帮忙看看解答一下。
谢谢。
有类似经历的朋友吗?请帮我解答一下。 展开
1个回答
展开全部
id是标识bean的,spring会根据id生成对于的类
你所谓的name表示是生成的这个类有这样一个属性,name必须和你类中的 setXXX() XXX第一个字母小写相同 否则找不到就报空指针
ref表示你的这个属性需要引用另外一个bean 而这个ref里面写的就是你要引用的别的bean的id ,
你所谓的name表示是生成的这个类有这样一个属性,name必须和你类中的 setXXX() XXX第一个字母小写相同 否则找不到就报空指针
ref表示你的这个属性需要引用另外一个bean 而这个ref里面写的就是你要引用的别的bean的id ,
更多追问追答
追问
我也是这样想的,也是那样做的。问题就是报空指针异常了。
而当name和ref并且和另外一个bean的id一样时,就不会报错。
我是想问的为什么3个要一样才不会报错。
追答
不可能 你报错的地方可能是别的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询