这个报错,报500状态,搞了我几天,心累。
这是出现的两个异常
```
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.ssm.mapper.UserMapper.findAll
```
```
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.ssm.mapper.UserMapper.findAll
```
其实是我在applicationContext.xml中缺少了一项,
直接代码!
<!-- 配置和mybatis的整合 -->
<!--创建sqlSessionFactory工厂 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<!-- 指定Mybatis全局配置文件的位置 -->
<property name="configLocation" value="classpath:sqlConfig.xml"></property>
<!-- 配置xml映射文件的为值(就是下面这个属性) -->
<property name="mapperLocations" value="classpath:mappers/*Mapper.xml"></property>
</bean>
这样就好了。
在这期间我还试过将XXXMapper.xml放到了/src/main/java下的com.xxx.mapper的目录下,当然这样也是不行的,会出现另外的异常。
但是只要加了上面的属性后:
1、把XXXMapper.xml放到了/src/main/java下com.xxx.mapper的目录也变得可以了。
2、就是你再删了那个属性,也能运行,不会报错了。
总结原因:可能我之前改过包名,导致无法扫描,所以最好还是加上那个属性。