Spring Boot和Mybatis的mapper-locations
环境
Spring Boot 版本为2.0.4.RELEASE,
Mybatis 版本为3.4.6,
Mybatis-Spring 版本为1.3.2。
Spring Boot + Mybatis的mapper-locations
如果使用Spring Boot + Mybatis并使用Mapper XML进行数据访问,可以在application.yml(properties)文件中指定XML文件的位置,如下所示。
mybatis:
mapper-locations: classpath*:/jp/co/arsware/example/mapper/*.xml
然而,在Spring Boot + Mybatis中,如果Mapper XML和Mapper类的路径相同,即使不进行上述指定,Mybatis也会自动加载Mapper XML。”Mapper XML和Mapper类的路径相同”的概念如下所示。
・src/main/java/jp/co/arsware/example/mapper/CityMapper.java
・src/main/resources/jp/co/arsware/example/mapper/CityMapper.xml
只要co以下路径相同,就可以加载。
如果以上条件不相符并且application.yml(properties)中没有指定mapper-locations,则将在运行时发生以下错误。
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
因此,如果想要更改XML的位置,或者有其他需求,必须明确在application.yml(properties)中使用mapper-locations进行指定。
以上就是。