1. 动态注入Bean 的值
Spring 的支持者经常提到的动态注入Bean 的值,号称可以不用编程赋值,用XML
配置文件可以解决一切赋值语句。
也许有人不知道Spring的配置文件有什么作用,如果现在想修改程序的输出,非常简单,
不需要再修改源码再重新编译了,只需要修改bean定义文件里面的:
<property name="message">
<value type="java.lang.String">儿子</value>
</property>
2. 加载多份文件的Spring
ApplicationContext ctx = new ClassPathXmlApplicationContext(
new String[]{"applicationContext.xml","applicationContext2.xml"} );
如果配置文件很多的话,我们还可以采用通配符的办法来加载,假设所有的配置文件都
放在src/目录下,那我们可以用下面的方式来加载:
ApplicationContext ctx = new ClassPathXmlApplicationContext("classpath:/*.xml");
同样的,这种方式也支持多个带有通配符的数组方式的文件位置参数,其它的配置文件路径
写法还有:/WEB-INF/applicationContext*.xml,classpath*:applicationContext*.xml,这种
写法通常出现在Spring 整合Struts 和其它Web 框架时用来加载多个配置文件。
我们介绍这一节是因为实际开发中,尤其是 Web 层的开发的时候,经常会出现因为项
目模块很多,出现多份Spring 配置文件的情况。这一节能帮你理解多份文件是如何被Spring
加载的。
1. 报错:
1. 2008-11-03 14:28:57,312 WARN [net.sf.ehcache.config.Configurator] - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath:
jar:file:/D:/eclipse/plugins/org.hibernate.eclipse_ 4.1.0 /myeclipse-data/3.0/lib/ehcache-1.1.jar!/ehcache-failsafe.xml
2. 2008-11-03 14:28:58,781 WARN [org.hibernate.util.JDBCExceptionReporter] - SQL Warning: 0, SQLState:
2008-11-03 14:28:58,781 WARN [org.hibernate.util.JDBCExceptionReporter] - [Microsoft][SQLServer 2000 Driver for JDBC]Database changed to testcompany
2008-11-03 14:28:58,796 WARN [org.hibernate.util.JDBCExceptionReporter] - SQL Warning: 5701, SQLState: 01000
2008-11-03 14:28:58,796 WARN [org.hibernate.util.JDBCExceptionReporter] - [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]已将数据库上下文改为 'testcompany'。
2008-11-03 14:28:58,796 WARN [org.hibernate.util.JDBCExceptionReporter] - SQL Warning: 0, SQLState:
2008-11-03 14:28:58,796 WARN [org.hibernate.util.JDBCExceptionReporter] - [Microsoft][SQLServer 2000 Driver for JDBC]Language changed to 简体中文
2008-11-03 14:28:58,796 WARN [org.hibernate.util.JDBCExceptionReporter] - SQL Warning: 5703, SQLState: 01000
2008-11-03 14:28:58,796 WARN [org.hibernate.util.JDBCExceptionReporter] - [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]已将语言设置改为 简体中文。
解决:
1.
2. 正常启动的信息,这是微软的jdbc for sqlserver 的特色,可以用 jtds 的驱动就不会出现这样的提示。sqL Server数据库的Java驱动程序jTDS近日发布了1.1版本。jTDS JDBC Driver是针对微软SQL Server数据库开发的JDBC驱动程序。1.1版本是一个重要的版本发布,新特性包括:SQL语句缓存有很大改进,可配置的元数据缓存,优化了锁定支持,更快的单向游标等。