springMVC中 java.io.FileNotFoundException: Could not open ServletContext resource [/jdbc.properties]_可悠然的博客-程序员秘密

	at org.springframework.context.support.PropertySourcesPlaceholderConfigurer.postProcessBeanFactory(PropertySourcesPlaceholderConfigurer.java:153) ~[spring-context-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:284) ~[spring-context-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:164) ~[spring-context-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:693) ~[spring-context-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:531) ~[spring-context-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:409) ~[spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:291) ~[spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:103) ~[spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4853) ~[catalina.jar:8.0.47]
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314) ~[catalina.jar:8.0.47]
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) ~[catalina.jar:8.0.47]
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:753) ~[catalina.jar:8.0.47]
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:729) ~[catalina.jar:8.0.47]
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) ~[catalina.jar:8.0.47]
	at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1733) ~[catalina.jar:8.0.47]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_144]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_144]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_144]
	at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300) ~[tomcat-coyote.jar:8.0.47]
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) ~[?:1.8.0_144]
	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) ~[?:1.8.0_144]
	at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:484) ~[catalina.jar:8.0.47]
	at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:433) ~[catalina.jar:8.0.47]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_144]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_144]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_144]
	at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300) ~[tomcat-coyote.jar:8.0.47]
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) ~[?:1.8.0_144]
	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) ~[?:1.8.0_144]
	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468) ~[?:1.8.0_144]
	at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76) ~[?:1.8.0_144]
	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309) ~[?:1.8.0_144]
	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1401) ~[?:1.8.0_144]
	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829) ~[?:1.8.0_144]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_144]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_144]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_144]
	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357) ~[?:1.8.0_144]
	at sun.rmi.transport.Transport$1.run(Transport.java:200) ~[?:1.8.0_144]
	at sun.rmi.transport.Transport$1.run(Transport.java:197) ~[?:1.8.0_144]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_144]
	at sun.rmi.transport.Transport.serviceCall(Transport.java:196) ~[?:1.8.0_144]
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568) ~[?:1.8.0_144]
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826) ~[?:1.8.0_144]
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683) ~[?:1.8.0_144]
	at java.security.AccessController.doPrivileged(Native Method) [?:1.8.0_144]
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682) [?:1.8.0_144]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_144]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_144]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_144]
Caused by: java.io.FileNotFoundException: Could not open ServletContext resource [/jdbc.properties]
	at org.springframework.web.context.support.ServletContextResource.getInputStream(ServletContextResource.java:159) ~[spring-web-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.core.io.support.EncodedResource.getInputStream(EncodedResource.java:159) ~[spring-core-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.core.io.support.PropertiesLoaderUtils.fillProperties(PropertiesLoaderUtils.java:99) ~[spring-core-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.core.io.support.PropertiesLoaderSupport.loadProperties(PropertiesLoaderSupport.java:181) ~[spring-core-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.core.io.support.PropertiesLoaderSupport.mergeProperties(PropertiesLoaderSupport.java:162) ~[spring-core-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	at org.springframework.context.support.PropertySourcesPlaceholderConfigurer.postProcessBeanFactory(PropertySourcesPlaceholderConfigurer.java:144) ~[spring-context-5.0.2.RELEASE.jar:5.0.2.RELEASE]
	... 52 more

这里报错原因:无法打开ServletContext资源[/jdbc。properties]

我找了一下才发现是以为我配置连接池时出错了

	<context:property-placeholder location="jdbc.properties"/>

正确的配置方法是

<context:property-placeholder location="classpath:jdbc.properties" />

在jdbc.properties前面加上classpath:就行了

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43164918/article/details/85229439

智能推荐

转载:你所不知道的C和C++运行库_sanmu007it的博客-程序员秘密

你所不知道的C和C++运行库   周五晚,小雨,少见的未加班。无聊,遂准备写一篇博客,介绍一下C和C++运行库,只因发现工作几年的人对此一知半解的大有人在。    在使用VC构建项目时,经常会遇到下面的链接错误:                     初学者面对这些错误常常不知所错:libcmt.lib是什么东西?msvcrtd.dll又是干吗用的?在

Python常用数据库封装方法_Firewine的博客-程序员秘密_python 数据库封装

Python连接db——连接池封装方法mysql,mongo,redis 连接池方法字符串相似度匹配日志打印mysql,mongo,redis 连接池方法import pymysqlimport redisfrom aliyun.log import LogClientfrom dbutils.persistent_db import PersistentDBfrom dbutils.pooled_db import PooledDBfrom pymongo import MongoClien

MySQL主从双向同步复制_crp10018的博客-程序员秘密

MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件,并维护日志...

纬图HOLLONG BLE SNIFFER 支持Linux系统_viewtoolsz的博客-程序员秘密

1。 下载软件:在Linux下面,下载最新版本:http://www.viewtool.com/index.ph ... ong-4-0-4-1-4-2-ble复制到Linux 系统随便哪个工作目录下面。在运行以上软件前,必须要有:* 硬件:可以在淘宝寻找:纬图 低功耗蓝牙4.0/4.1/4.2 BLE协议分析Sniffer* 软件: Wireshark以上准备好后,“ctrl+alt+t” 进...

#!/bin/bash_Jackalfly的博客-程序员秘密_#!/bin/bash

在shell脚本的第一行中,必须写#!/bin/bash吗?带着这个问题,我今天在百度上搜索了一下,发现在一个贴子中讨论了这个问题,觉得各个跟贴者在回答这个问题时,都解释的很有道理,现摘记如下,以便学习。 ---------------------------------------------------------------------------------------------

matlab提取多边形区域,Matlab:如何在voronoi图中导出多边形的顶点(坐标)?_黄利好的博客-程序员秘密

I have a created function file in hand which is to draw lines in image,[img]=drawline(point1,point2,color,img). It's used to connect any two points that are inside the image. I'm asked to create the v...

随便推点

Android数据库高手秘籍(二):创建表和LitePal的基本用法_老牛破车懒人的博客-程序员秘密

原文出处: 郭霖的博客   欢迎分享原创到伯乐头条上一篇文章中我们学习了一些Android数据库相关的基础知识,和几个颇为有用的SQLite命令,都是直接在命令行操作的。但是我们都知道,数据库是要和程序结合在一起使用的,单独对一个数据库去进行増删改查操作并没有什么意义,因此今天我们就来学习一下如何在Android程序当中去操作SQLite数据库,还没看过前一篇文章的朋友可以先去参考 And

iOS如何隐藏TabBar_iOS-董彬的博客-程序员秘密

本篇文章简单介绍下如何隐藏 TabBar。画面迁移的隐藏,方法很简单,网上也有不少介绍。这里主要介绍的是在当前页面上隐藏 TabBar。下面是效果图:             原理其实很简单,就是修改 TabBar 的 subview 的 frame 就行了。其中,TabBar 的subview 共有两个,一个叫 UITabBar,就是底下的那个 Bar

[算法]iOS 视频添加水印,合成视频两种方案(整体渲染和分割渲染)_hherima的博客-程序员秘密

现手机里有一段视频,通过APP给他添加一个水印。iOS提供了在视频上添加layer的接口,添加一个水印还是很方便的(添加水印)。添加完水印有一个渲染过程,在手机这种设备上还是比较慢的,比如:对1分钟的高清视频(960x540)进行渲染需要20秒左右。如何在现有API基础上提高渲染速度,提升用户体验,成了问题。笔者发现两种渲染方法: 先看图,这有一个6秒的视频,我抓了四张关键帧。只在第2,3两张关键帧上添加字幕(一个关键帧代表1.5秒。所以,两个关键帧就代表是3秒时长)

好多鱼!_W_X_C的博客-程序员秘密

牛牛有一个鱼缸。鱼缸里面已经有n条鱼,每条鱼的大小为fishSize[i] (1 ≤ i ≤ n,均为正整数),牛牛现在想把新捕捉的鱼放入鱼缸。鱼缸内存在着大鱼吃小鱼的定律。经过观察,牛牛发现一条鱼A的大小为另外一条鱼B大小的2倍到10倍(包括2倍大小和10倍大小),鱼A会吃掉鱼B。考虑到这个,牛牛要放入的鱼就需要保证:1、放进去的鱼是安全的,不会被其他鱼吃掉2、这条鱼放进去也不能吃掉其他鱼鱼缸里面已经存在的鱼已经相处了很久,不考虑他们互相捕食。现在知道新放入鱼的大小范围[minSize,maxSiz

HashMap 线程不安全原因剖析(jdk1.7,jdk1.8)_行思坐忆,志凌云的博客-程序员秘密

我们都知道HashMap是线程不安全的,在多线程环境中不建议使用,但是其线程不安全主要体现在什么地方呢,本文将对该问题进行解密。在jdk1.8中对HashMap做了很多优化,这里先分析在jdk1.7中的问题,相信大家都知道在jdk1.7多线程环境下HashMap容易出现死循环,这里我们先用代码来模拟出...

fastadmin Tinymce编辑器配置首行缩进_appleคิดถึง的博客-程序员秘密_tinymce首行缩进

记录:使用fastadmin 的免费插件Tinymce富文本编辑器时,设置首行缩进。一、找到插件js位置并打开文件位置:addons\tinymce\bootstrap.js二、找到初始化编辑器部分代码,进行自定义配置段落样式代码如下: style_formats: [ //新增 首行缩进与行高 配置 {