在应用spring注释时,所有的bean多是自动装载,没有使用配置文件,也就不知道bean的名字,那么怎么手动获得bean呢,试了一下,试出下面的方法。
WebApplicationContext cont = WebApplicationContextUtils .getRequiredWebApplicationContext(request.getSession().getServletContext()); System.out.println(cont.getBean("departmentManager"));
“ departmentManager ”是指你的类名第一个字母小写。
我是通过
for (int i = 0; i < cont.getBeanDefinitionNames().length; i++) { System.out.println(cont.getBeanDefinitionNames()[i]); }
这个方法查到的,但是不知道会不会随环境的变化而变化?有知道的朋友留个言,谢谢!
缺省就是类名,不过是小写开头。你也可以在注释中设定Bean的名字。
你用注释的方式,还是可以设置bean的唯一名称的,
使用可以参考下
http://www.iteye.com/topic/244153
[color=red]@Component("abc")[/color]
public class XXX{
}
这个component注释可选,用来定义你bean的id