關於idea的目錄, mybatis里mapper無法用resource獲取 和 駝峰命令規則


<mappers> <mapper resource="com/choco/dao/BlogMapper.xml"/> </mappers>
我在resources下面創建和 main/java同樣的目錄, 通過resource獲取到xml文件, 但是不可以, 我很模糊, 因為之前我是可以的.

解決辦法:

  1. idea里面一次創建例如:com.choco.dao包 和 分三次創建是一樣的. 雖然可能無法展開, 但確實效果是一樣的
  2. 如果你的mapper接口和映射xml文件不在一個目錄, 比如你把xml文件放在了resources下面, 那么你需要在pom.xml添加這段代碼.


    src/main/resources

    /*.properties
    / .xml



    src/main/java

    **/
    .properties
    **/*.xml

    true

這是因為sqlSessionFactoryBean.setMapperLocations(resolver.getResource(packageSearchPath));
即sqlSessionFactoryBean調用的方法是getResource, 這個方法從類的根路徑下獲取文件.
而在mybatis里面, mian/java下面類的根路勁為 target/classes
所以只要你的根路勁下面沒有xml映射文件, 那么config文件里面,注冊mapper就無法成功.

在setting里面沒有開啟mapUnderscoreToCamelCase, 依然可以識別, 不知道這是不是idea自動做了.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM