為什么讀取不到configuration.xml
老師想問一下,我用main函數測試DBAccess類時沒問題,但是發(fā)布之后總是讀取不到文件這是DBAccess類
package?com.lichunting.db; import?java.io.IOException; import?java.io.Reader; import?org.apache.ibatis.io.Resources; import?org.apache.ibatis.session.SqlSession; import?org.apache.ibatis.session.SqlSessionFactory; import?org.apache.ibatis.session.SqlSessionFactoryBuilder; /** ?*?訪問數據庫 ?*?@author?LiChunting ?* ?*/ public?class?DBAccess?{ public??SqlSession?getSqlSession()?throws?IOException{ //通過配置文件獲取數據庫連接信息 Reader?reader?=?Resources.getResourceAsReader("com/lichunting/config/Configuration.xml"); //通過配置信息構建一個SqlSessionFactory SqlSessionFactory?sqlSessionFactory?=?new?SqlSessionFactoryBuilder().build(reader); //通過sqlSessionFactory打開一個數據庫會話 SqlSession?sqlSession?=?sqlSessionFactory.openSession(); return?sqlSession; } }
這是錯誤
Servlet.service()?for?servlet?[ListServlet]?in?context?with?path?[/WeChat]?threw?exception?[Servlet?execution?threw?an?exception]?with?root?cause java.lang.ClassNotFoundException:?org.apache.ibatis.io.Resources at?org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714) at?org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559) at?com.lichunting.db.DBAccess.getSqlSession(DBAccess.java:20) at?com.lichunting.dao.MessageDao.queryMessageList(MessageDao.java:31) at?com.lichunting.service.ListService.queryMessageList(ListService.java:12) at?com.lichunting.servlet.ListServlet.doGet(ListServlet.java:33) at?javax.servlet.http.HttpServlet.service(HttpServlet.java:621) at?javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at?org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at?org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at?org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at?org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at?org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at?org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at?org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at?org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) at?org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) at?org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) at?java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at?java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at?java.lang.Thread.run(Thread.java:662)
2015-01-08
java.lang.ClassNotFoundException:?org.apache.ibatis.io.Resources
這不是讀不到配置文件,mybatis的jar包你沒加到工程中,或是雖然已經加入到工程中,但在某些開發(fā)環(huán)境下啟動工程需要手動引用你沒有引用。
2016-08-22
怎么解決的 我的也是這個問題