問題描述:
在搭建SSM項目是遇到org.springframework.beans.factory.BeanInitializationException: Could not load properties; nested exception is java.io.FileNotFoundException:Could not open ServletContext resource [/jdbc.properties]
錯誤;
原因:
Maven項目,application-context.xml、jdbc.properties文件均放置在src/main/resources目錄下,Tomcat部署項目,src/main/resources目錄下的配置文件默認位置為:{項目名}/WEB-INF/classes,而Spring卻在項目根目錄下尋找,肯定找不到,因此,配置時指定classpath目錄下尋找即可.
解決方法:
在build標簽中加入:
<!--加載外部配置文件-->
<context:property-placeholder location="classpath:jdbc.properties"/>
<!--配置數據源-->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.pwd}"/>
</bean>