采用spring注入,就不能使用new创建对象
即,spring注入而生成的对象和new创建的对象不是同一个对象,注入的对象属性会自动注入,而new的对象,其属性不会自动初始化,使用setter或者构造方法。
使用单例模式时,不能在web.xml使用
<context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationContext.xml, /WEB-INF/daoContext.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener </listener-class> </listener>
进行自动加载。
而是使用ApplicationContext,手动加载,这样的话,启动服务器快,但是访问数据库较慢,每次访问时都需要加载上下文环境。
ApplicationContext的两个子类,其中FileSystemXmlApplicationContext的路径较为复杂,不推荐使用,用ClasspathXmlApplicationContext,默认根目录是WEB-INF/classes,所以可以使用 .. 相对路径