为了账号安全,请及时绑定邮箱和手机立即绑定

为什么读取不到configuration.xml

老师想问一下,我用main函数测试DBAccess类时没问题,但是发布之后总是读取不到文件这是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)


正在回答

4 回答

java.lang.ClassNotFoundException: org.apache.ibatis.io.Resources

这不是读不到配置文件,mybatis的jar包你没加到工程中,或是虽然已经加入到工程中,但在某些开发环境下启动工程需要手动引用你没有引用。

0 回复 有任何疑惑可以回复我~
#1

IT_TI 提问者

解决了,谢谢老师
2015-01-15 回复 有任何疑惑可以回复我~
#2

屠猪侠 回复 IT_TI 提问者

请问你是怎么解决的啊,我也遇到了一样的问题。
2015-10-15 回复 有任何疑惑可以回复我~
#3

慕粉3905372

这是怎么解决的 现在遇到了这个问题了
2016-08-30 回复 有任何疑惑可以回复我~

怎么解决的 我的也是这个问题

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么读取不到configuration.xml

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信