1、报错背景:
//伪代码
@Autowired
private StringRedisTemplate redisTemplate;
public void addd(Request request) {
Long id = request.getId();
BoundHashOperations<String, Object, Object> HashData =
redisTemplate.boundHashOps(cartKey);
HashData.get(id); //执行这一行时报错
}
2、错误信息:

3、分析问题
错误: java.lang.Long cannot be cast to java.lang.String
翻译:java.lang.Long不能强制转换为java.lang.String
可知 HashData.get()中传递的参数不可谓Long类型,且Long类型无法转为String类型。
4、解决方案
--提前将Long类型转为String类型
Long.toString(id)
希望对你有帮助,谢谢!
这篇博客讨论了一个在Java应用程序中遇到的问题,当尝试从Long转换到String时出现类型转换异常。错误信息指出`java.lang.Long cannot be cast to java.lang.String`。博主分析了问题,并提供了解决方案,即在调用`HashData.get()`之前,先将Long类型的ID转换为String类型,使用`Long.toString(id)`方法。这个博客对于理解Java类型转换和避免类似错误具有参考价值。
9062

被折叠的 条评论
为什么被折叠?



