Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Mapper method 'com.guang.mapper.DrugMapper.selectlikeCount attempted to return null from a method with a primitive return type (int).
时间: 2024-04-10 22:34:26 浏览: 52
这个错误是由于在 `DrugMapper` 接口的 `selectlikeCount` 方法中,返回类型被定义为原始数据类型 `int`,而查询结果为 `null` 导致的。原始数据类型不能接受 `null` 值,所以会抛出 `BindingException` 异常。
要解决这个问题,你可以将 `selectlikeCount` 方法的返回类型修改为 `Integer` 类型,这样就可以接受 `null` 值了。示例代码如下:
```java
public interface DrugMapper {
Integer selectlikeCount();
}
```
修改后,如果查询结果为 `null`,则 `selectlikeCount` 方法会返回 `null` 而不会抛出异常。
相关问题
Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
这个错误提示表明在处理请求时出现了问题,具体原因是绑定的语句无效,即找不到对应的语句。这通常是由于MyBatis配置文件中的语句ID与Mapper接口中的方法名不匹配所导致的。可以检查一下Mapper接口中的方法名是否与配置文件中的语句ID一致。如果还是无法解决问题,可以考虑检查一下Mapper接口和XML文件的路径是否正确,或者检查一下是否有其他错误导致了这个问题的出现。
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'criterion' not found. Available parameters are [ids, param1]] with root cause org.apache.ibatis.binding.BindingException: Parameter 'criterion' not found. Available parameters are [ids, param1]
这个异常一般是由于 MyBatis 框架中的 SQL 语句与对应的参数不匹配所引起的。根据异常信息,您的 SQL 语句中不存在名为 'criterion' 的参数,而只有 'ids' 和 'param1' 两个可用参数。
您可以检查一下您的 SQL 语句是否正确,是否存在拼写错误或者参数名称错误等问题。同时,还需要检查一下您的 Java 代码中是否正确设置了 SQL 语句中需要的参数。
如果您使用的是 MyBatis Generator 自动生成的代码,那么可以检查一下对应的 XML 文件是否正确生成,以及是否正确生成了对应的 Java 实体类。如果您手动编写了 SQL 语句和对应的 Java 代码,那么可以检查一下是否存在语法错误或者其他错误。
希望这些信息可以帮助您解决问题。如果还有其他问题,请随时提出。
阅读全文