Could not load properties; nested exception is java.io.FileNotFoundException:Could not open ServletContext resource [/xxx.properties]` 解决方法

问题描述:

​ 在搭建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>
posted @ 2020-09-27 20:08  酸黄瓜333  阅读(1435)  评论(0)    收藏  举报