[B cannot be cast to java.lang.String

sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
    org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    $Proxy22.getAllNoticeList(Unknown Source)

昨天一下午找的bug。这个错误代码,百度谷歌了一下。大概都能知道是什么原因导致的错误。可是有些错误是非常细了。就比方这个。因此记录下来,希望以后不要再犯。

先贴上之前百度的。

这个错误通常是类型不匹配。详细的什么类型,要看你的是什么数据了,从数据库中查询的数据是乱码。可是数据库里显示的是正常的utf-8,原因在于用到了嵌套查询,嵌套查询中使用了中文字符串拼接。然后就斯巴达了,事实上这个错误非常easy避免的,由于測试的时候用的本地数据库才出现的,用server的数据库嵌套查询不会出现乱码。应该是MySql的设置问题。可是能够通过sql语句中增加编码来解决,就是这样。

时间: 2024-10-10 09:02:50

[B cannot be cast to java.lang.String的相关文章

数据转换bug花了半天时间 Java.math.BigDecimal cannot be cast to java.lang.String

从数据库取出一个 Count函数 统计的值 在代码中要转成Integer类型的时候 Integer.parseInt((String)map.get("ID_")) 报了一下错误: Java.math.BigDecimal cannot be cast to java.lang.String 解决方法: Object ob = map.get("ID_");先将数据转成 Integer.parseInt(ob.toString()); http://blog.csd

java.math.BigDecimal cannot be cast to java.lang.String   ----解决方案

今天在开发的时候遇到了一个问题,在此记录一下,问题的大概意思就是类型不一致不能进行强转 代码如下: rolf.setFuncd((String) rece.get("FUN_CD"));//强转 rolf.setFunid((String) rece.get("FUN_ID")); //强转 rolf.setFunnm((String) rece.get("FUN_NM")); //强转 因为我第二段的代码Orc数据库的字段类型是number,而

java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String

1.错误描写叙述 java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String service.impl.ArrivalBillServiceImpl.exportBillExcel(BillServiceImpl.java:266) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.Na

在拦截器中获取请求参数,[Ljava.lang.String; cannot be cast to java.lang.String报错

Map<String,Object> parametersmap=invocation.getInvocationContext().getParameters();//获取请求参数                Set<String> parametersset=parametersmap.keySet();                for(String key:parametersset){ System.out.println(key+":"+par

JSONObject转换Int类型--java.lang.Integer cannot be cast to java.lang.String

参数 params={"abc":0} JSONObject转换Int类型 JSONObject json = JSONObject.fromObject(params); if (json.containsKey("desgin_review_type")) { value=json.getInt("abc")+""; } } 运行错误写法<java.lang.Integer cannot be cast to jav

java.lang.character cannot be cast to java.lang.String

今天在因为修改了存储过程的参数,要增加传入的参数,数据为Mysql.在写的过程中,把这默认传值简单的写成了死值.但是运行后发现报错了. java.lang.character cannot be cast to java.lang.String 这个错误.然后查代码,上网找答案.最后终于解决了. 是因为我在传值的时候写的是. '0' 这样传入的值就带着单引号一起传了. 最后修改成"0". 问题解决. 这个也不算什么大问题,只是平时在写代码的时候不太注意. 希望自己以后改掉这个毛病. 与

“无效数字” ;java.lang.Integer cannot be cast to java.lang.String

今天页面上突然查询不出数据,大致的sql语句是 select xx ,xxx from table a where a.lrmb in ( 6101060033, 61010503300, 61016666645 ) order by xxx desc 报错信息是"无效数字",很快就发现是lrbm这个字段里面的数字上没有引号,而之前一直是可以查询出数据的,所以很可能是数据库里面有人人工的添加了一条数据,这条数据的lrbm字段的类型有错,待会儿在自己本地 数据库里面测试一条错误哦数据测试

Redis 自定义对象 cannot be cast to java.lang.String

Redis序列化对象的时候报错如下 java.lang.ClassCastException: com.ppdai.cbd.ddp.thirdparty.contract.bhxtzx.BHXTZXTask cannot be cast to java.lang.String at org.springframework.data.redis.serializer.StringRedisSerializer.serialize(StringRedisSerializer.java:33) at

42-字符串到json 的错误 com.alibaba.fastjson.JSONObject cannot be cast to java.lang.String

json: {"updated_at":1551780617,"attr":{"uptime_h":3,"uptime_m":17},"did":"GBBxjJYAxE4apkxwEzR3"} Map rMap = (Map) JSON.parse("{"updated_at":1551780617,"attr":{"uptim

org.springframework.cache.interceptor.SimpleKey cannot be cast to java.lang.String

springboot整合redis时,使用@Cacheable注解,如果方法的key参数为空,就会报org.springframework.cache.interceptor.SimpleKey cannot be cast to java.lang.String的错误. ? 1 错误信息 ? 2 如图 ? 3 解决方案 package com.test.config; import org.springframework.cache.CacheManager; import org.sprin