Caused by: java.lang.IllegalArgumentException: No enum constant org.apache.ibatis.type.JdbcType.TINYINT UNSIGNED
时间: 2023-09-30 08:07:31 浏览: 185
这个错误通常是因为 MyBatis 默认的 JdbcType 不支持 TINYINT UNSIGNED 类型导致的。您可以尝试更改 MyBatis 的 JdbcType 设置,将 TINYINT UNSIGNED 类型映射为其他支持的类型,例如 SMALLINT 或 INTEGER。您可以在 MyBatis 配置文件中找到 JdbcType 的设置,例如:
```xml
<typeHandlers>
<typeHandler jdbcType="TINYINT UNSIGNED" javaType="java.lang.Integer"
handler="org.apache.ibatis.type.IntegerTypeHandler"/>
</typeHandlers>
```
您可以将上述配置更改为:
```xml
<typeHandlers>
<typeHandler jdbcType="TINYINT UNSIGNED" javaType="java.lang.Integer"
handler="org.apache.ibatis.type.SmallIntTypeHandler"/>
</typeHandlers>
```
这将把 TINYINT UNSIGNED 类型映射为 SMALLINT 类型。
相关问题
Caused by:java.lang.ExceptionInInitializerError: null;Caused by: java.lang.IllegalArgumentException: name
这个错误链显示了一个嵌套的异常结构。最内层的错误是`java.lang.IllegalArgumentException`,它指出有一个名为"name"的参数无效或不符合预期。这个异常是在尝试创建或初始化某个对象时发生的,可能是由于传入的名称为空或者不符合规范。
外层的`java.lang.ExceptionInInitializerError`则表明这个错误发生在对象的初始化(initialization error)阶段,也就是在静态变量初始化或者静态代码块执行时。这通常是由于内部的初始化过程引发了上述`IllegalArgumentException`。
要解决这个问题,你需要检查代码中涉及名字验证的地方,确认输入的名称是否满足条件,并修复可能导致异常的逻辑。如果这个错误出现在Spring的配置中,可能是依赖注入或者bean的定义存在问题。
Caused by: org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.ArrayList and java.lang.String ### Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.ArrayList and java.lang.String
这个错误通常是由于在MyBatis的Mapper文件中使用了错误的比较运算符或者类型不匹配导致的。你可以检查一下Mapper文件中的sql语句,确认所有的比较运算符都使用了正确的语法,并且所有的参数类型都与数据库中的字段类型匹配。如果你无法解决这个问题,可以将Mapper文件和相关的Java代码发给我,让我来帮你排查问题。
阅读全文