Mapped Statements collection already contains value for ...
报错的字面意思是Mapper配置文件里有重复的id,自己检查了一万遍也没发现重复,就开始怀疑是不是这个配置文件被重复加载了。
果然,mybatis配置文件里有:
<mappers>
<mapper class="com.wyh.dao.BookMapper"/>
</mappers>
Spring的配置文件里也有:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml"/>
<property name="mapperLocations" value="classpath:com/wyh/dao/*.xml"/>
</bean>
删一个就好了,最好是删了mybatis配置文件里的。