【发布时间】:2016-06-29 11:00:55
【问题描述】:
数据库中的值是这样保存的 ::{"rating1":"2","rating2":"4","rating3":"5","rating4":"0","rating5":"0"}, 现在我需要访问 2、4、5 等单个值。
我创建了域类类型的变量“评级”,并尝试使用 (.) 运算符作为对象访问,但它不起作用并给出错误: :exception::groovy.lang.MissingPropertyException: 没有这样的属性: rating1 类: java.lang.String
,我尝试转换为数组和列表(作为 Array、作为 ArrayList、作为 List)等,但这也不起作用。 投射到列表给出异常:exception::org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object '{"rating1":"2","rating2":"4","rating3":"5", "rating4":"0","rating5":"0"}' 类 'java.lang.String' 到类 'java.util.List' 。
像“rating[3]”这样的访问会给出答案“a”。我应该使用“rating[11]”来获得价值 2 还是有什么办法。 可能的解决方案是什么。请帮忙。
【问题讨论】: