最近在學Mybatis,按照視頻的講解在項目的某個包裏創建配置文件,而後讀取配置文件,可是一直提示異常。
html
讀取配置文件的爲官方代碼:java
String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession session = sqlSessionFactory.openSession();
通過反覆思考,視頻用的ide是eclipse,eclipse裏在包下的配置文件(.propoties 和.xml等)編譯以後會自動複製到編譯後的文件夾中,也就是classes目錄。所以代碼能夠經過路徑加載到配置文件。spring
而如今咱們使用的是IntelliJ IDEA,idea對這些配置的文件方式很明顯和eclipse是不一樣的。在idea中有一個 Content Roots的概念。須要爲每個folder配置相應的Content Roots。Content Roots包括resources、sources、tests等。
如圖所示:sql
那麼對於idea來講,就有如下幾種解決方案。session
以上兩種解決方案適用於make project方式來編譯項目。mybatis
若是是maven項目。還能夠經過配置pom.xml來實現。mvc
<build> <finalName>springmvc-study</finalName> <resources> <resource> <directory>${basedir}/src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> </resource> <resource> <directory>${basedir}/src/main/resources</directory> </resource> </resources> </build>
這樣不用對idea設置,也可使用maven的編譯命令編譯項目,並複製配置文件到編譯好的文件夾中。intellij-idea