重新编译后你会发现报了很多新的废弃类的警告,例如 XmlBeanFactory 已经改用 DefaultListableBeanFactory 替代、需要改为....
几天前我想,是时候将我的项目升级到 Spring 3.1 了,毕竟 3.1 版本已经经过几个 bug 修复版后足够稳定了。
升级到 Spring 3.1 是非常简单的,只需要更新 Maven 的版本号然后重新构建即可:
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-core</artifactId>
- <version>3.1.2.RELEASE</version>
- </dependency>
重新编译后你会发现报了很多新的废弃类的警告,例如 XmlBeanFactory 已经改用 DefaultListableBeanFactory 替代:
- Resource resource = new ClassPathResource("example2.xml");
- return new XmlBeanFactory(resource);
需要改为:
- Resource resource = new ClassPathResource("example2.xml");
- DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory();
- BeanDefinitionReader reader = new XmlBeanDefinitionReader(beanFactory);
- reader.loadBeanDefinitions(resource);
完整的被废弃的类的列表请看
http://www.osctools.net/uploads/apidocs/Spring-3.1.1/deprecated-list.html
接下来是需要将 Spring 的 XML Schema 从 3.0 改为 3.1,如:
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
改为:
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
最简单的方法就是在 Eclipse 里使用全局替换将 -3.0.xsd 改为 -3.1.xsd,但替换之前最好还是检查一下。
更新 Schema 的目的是为了更多的使用新版本 Spring 的新特性。