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

來源:互聯網
上載者:User

參考: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檔案下。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.