在配置sql语句时,mybatis中的xml映射和方法注释可以共存吗?

不能同时设置。执行程序找不到接口的映射程序代理工厂。Mybatis会先解析xml文件,将解析后的sql封装在mapperstament中放入配置的mappedStatements中,以命名空间和方法名(也就是id)为关键字,mappedStatements是自定义映射。然后接口的代理项目就生成了。在生产代理工厂解析注释之后,它还将生成mapperstament并将其放入统一配置对象中。但是在放的时候,自定义映射会先判断是否存在,如果存在,会抛出IllegalArgumentException (name+"总是包含“+key”的值)。但是创建代理工厂的时候吃到了异常,所以加载的时候不会出错,但是不会为接口生成代理工厂。没有代理工厂,接口就没有可操作的实现类。