MyBatis配置报错java.io.IOException: Could not find resource mybatis-conf.xml

参考:http://blog.csdn.net/u010648555/article/details/70880425


本人用的也是IDEA,maven搭建的项目。

项目目录如下:


import bean.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;

/**
 * Created by david on 17-7-9.
 */
public class test {
    public static void main(String args[]){
        SqlSessionFactory sqlSessionFactory = null;
        //NyBatis的配置文件
        String resource = "mybatis-conf.xml";
        //使用类加载器加载mybatis的配置文件(它也加载关联的映射文件)
        try {
            InputStream is = Resources.getResourceAsStream(resource);
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
            //创建能执行映射文件中sql的sqlSession
            SqlSession session = sqlSessionFactory.openSession();

            User user = session.selectOne("mapping.userMapper.getUser",1);
            System.out.println(user);
        } catch (IOException e) {
            e.printStackTrace();
        }





    }
}


执行之后报错: java.io.IOException: Could not find resource mybatis-conf.xml

原因:

IDEA是不会编译src的Java目录的xml文件,所以在Mybatis的配置文件中找不到xml文件!(也有可能是Maven构建项目的问题,网上教程很多项目是普通的java web项目,所以可以放到src下面也能读取到)

解决办法:

第一种:

在maven的pom.xml中添加:

	<build>
            <resources>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.xml</include>
                    </includes>
                </resource>
            </resources>
        </build>

第二种:

将mybatis-conf.xml与userMapper.xml移动到resources文件下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值