spring主要的作用就是控制反转(IOC)及AOP
对于IOC一直做web的应用没有时间仔细考虑IOC的问题
其实我觉得IOC应该就是spring自动创建很多配置文件中的bean的instance
那么我们在程序中就可以随意的拿到这些beans
要拿到它们 那么先得拿到ApplicationContext(或者BeanFactory)对象
因为在spring中由它们来生成和管理那些bean的instance
在非web应用中我们要获得和创建它们
ApplicationContext ctx=new ClassPathXmlApplicationContext("配置文件");
然后就可以通过BeanFactory的getBean()来操作bean了(通过Api可以看到Application 是BeanFactory的subInterface)
而在web中我总是忽略了它也可以去取bean 大概是接触的时间短而且没有需求用到要去配置里面取bean的instance所以并未去想这个问题 今天看
一个前辈写的代码看到这段 觉得忽然点醒了自己 所以写下来
ApplicationContext applicationContext=WebApplicationContextUtils.getWebApplicationContext(ServletContext sc);
ServletContext sc=request.getSession().getServletContext();