javaweb里面session对象的value写一个Integer.parseInt("123")+1,然后报错java.lang.ClassCastException: java.base/java.lang.Integer cannot be cast to java.base/java.lang.String
时间: 2023-06-16 16:03:13 浏览: 173
出现这个错误的原因是因为Session中只能存储String类型的数据,而你将一个Integer类型的数据存储到了Session中。所以在获取Session中的值时,系统会尝试将其转换为String类型,这样就会抛出java.lang.ClassCastException: java.base/java.lang.Integer cannot be cast to java.base/java.lang.String异常。
解决这个问题的方法是,将Integer类型的数据转换为String类型的数据再存储到Session中,例如:
```java
int value = Integer.parseInt("123") + 1;
session.setAttribute("key", String.valueOf(value));
```
这样就可以避免出现类型转换异常了。
阅读全文