萌新哭泣的问题,问题出现于,在复制了一个module之后,各种改名,不小心改动的xml相关的配置。原因就是对于mybatis-spring项目 其中的配置文件不是很清楚。
<mapper namespace="com.vdian.vitamin.test.qacommon.persistence.NodeInfoMapper">
mapper文件夹下的对应do文件的xml里的namespace一定包名全路径
<select id="queryNodeInfoByGroupIdAndServiceIdAndNodeKey" ID对应的方法也要一致对应
第二个检查点
项目中的DBconfig的xml文件中除了对databasesource的配置外,注意有以下两个配置
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.**.persistence" /> presistence 下就是具体的mapper类 用于扫描发现项目中的mapper接口类
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml" />
<property name="typeAliasesPackage" value="com.***.dao" />
<property name="mapperLocations" value="classpath:mapper/*.xml" /> 特别是这里 寻找第一个检查mapperxml文件
</bean>
这样项目中Mybatis就能正确绑定数据资源和项目中的数据操作方法