异常背景:
在使用mybatis的时候,出现的异常
异常信息:
The error may exist in com/zuoyueer/dao/UserMapper.java (best guess)
### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.binding.BindingException: Type interface com.zuoyueer.dao.UserMapper is already known to the MapperRegistry.
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:80)
at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:64)
Caused by: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.binding.BindingException: Type interface com.zuoyueer.dao.UserMapper is already known to the MapperRegistry.
at org.apache.ibatis.builder.xml.XMLConfigBuilder.parseConfiguration(XMLConfigBuilder.java:121)
at org.apache.ibatis.builder.xml.XMLConfigBuilder.parse(XMLConfigBuilder.java:99)
at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:78)
... 24 more
Caused by: org.apache.ibatis.binding.BindingException: Type interface com.zuoyueer.dao.UserMapper is already known to the MapperRegistry.
at org.apache.ibatis.binding.MapperRegistry.addMapper(MapperRegistry.java:63)
at org.apache.ibatis.binding.MapperRegistry.addMappers(MapperRegistry.java:97)
at org.apache.ibatis.binding.MapperRegistry.addMappers(MapperRegistry.java:105)
at org.apache.ibatis.session.Configuration.addMappers(Configuration.java:737)
at org.apache.ibatis.builder.xml.XMLConfigBuilder.mapperElement(XMLConfigBuilder.java:364)
at org.apache.ibatis.builder.xml.XMLConfigBuilder.parseConfiguration(XMLConfigBuilder.java:119)
... 26 more
主要信息是:Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.binding.BindingException: Type interface com.zuoyueer.dao.UserMapper is already known to the MapperRegistry.
异常分析
- 全局配置文件配置出现异常,下面的是: SqlMapConfig.xml全局配置文件中的一部分
<mappers>
<!--引入一个映射文件-->
<mapper resource="com/zuoyueer/dao/UserMapper.xml"></mapper>
<!--映射文件和接口的名字一致,路径一致,就可以直接引入name属性值表示的包下的全部映射文件-->
<package name="com.zuoyueer.dao"/>
</mappers>
同时配置了一个映射文件,和包映射文件,两者冲突了
- 映射文件配置出现异常