注意:
在IDEA中使用maven的时候,默认xml文件一律放到resources目录下,因为放到java下话,只编译xxx.java文件,不会去编译xml文件,同样resources下的文件只编译xml等资源文件,不编译XXX.java文件,放错位置的话,是读取不到数据的,比如:XXXMapper.java和XXXMapper.xml都放到java包下面,默认不做其它配置的话,是无法读取到数据的,这样的分类机制,做的很好,安排的明明白白。
验证:
1.首先要明白IDEA中使用maven搭建工程,最常见到的classpath在哪里?
类路径就是编译后文件的目录,只要一运行或者单独在maven声明周期中选择任何一个阶段,包括clean,就会在该模块下自动形成一个target目录,下方会有classes目录,此目录就是指的classpath,明白该目录的目的是为了验证某个文件是否被编译,如果该目录下的包中有,则编译了
2.如果把XXXMapper.java和XXXMapper.xml都放到java包下面,在target-classes下会发现只有XXXMapper.class,没有XXXMapper.xml,说明xml文件在java包中不会被编译,并且无法获取到数据,会报错
3.在resources下新建一个mapper目录,然后把XXXMapper.xml移动过来,clean或者启动工程后,会发现在classes还有一个resources目录,里面有XXXMapper.xml,能够获取到数据