2 qq 27438091 qq_27438091 于 2016.09.18 09:27 提问

tomcat文件未找到异常,求助

![图片说明](http://img.ask.csdn.net/upload/201609/18/1474161985_126112.png)图片说明

严重: Servlet.service() for servlet ReadServlet threw exception
java.io.FileNotFoundException: db.properties (系统找不到指定的文件。)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.(FileInputStream.java:138)
at java.io.FileInputStream.(FileInputStream.java:93)
at com.lvccz.context.ReadServlet.read1(ReadServlet.java:33)
at com.lvccz.context.ReadServlet.doGet(ReadServlet.java:17)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:745)

5个回答

u013829202
u013829202   Rxr 2016.09.18 09:36

你这样写谁知道你加载的是,到底哪个地方的文件啊。 地址改成绝对路径

Marksinoberg
Marksinoberg   Ds   Rxr 2016.09.18 10:30

你这样写的话,会默认在当前程序的src路径下寻找此文件。所以是不会找到tomcat下面的这个文件的,个人建议使用绝对路径来进行处理。

YY_WG
YY_WG   2016.09.18 10:51

你好,不懂你的properties文件为什么会丢到tomcat bin目录下?
解决方法一:
像前面两位说的,写成绝对路径可以访问;
解决方法二:
将properties文件放到项目的src目录下,用一下方式去读取
InputStream inputStream = 类名.class.getClassLoader().getResourceAsStream("db.properties");

qq_27438091
qq_27438091   2016.09.18 09:27

图片说明

xiekuntarena
xiekuntarena   2016.09.18 10:58

1.首先,你代码中的的路径是相对路径,(src/db.properties),项目启动之后,所找的文件地址为 项目地址/src/src/db.properties
2.其次,你的db.properties不应该放在tomcat-->bin-->src下面,tomcat跟项目不搭嘎的。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!