这个整整让我找了两天,记录一下。先描述一下我的使用场景,我们用的springboot,从后台取出一些数据展示给运营人员看。前台用的bootstrap框架,然后用了thymeleaf模板引擎。一直用的都挺顺利,只有这一次,我按照以往的套路,将后台取出的数据(存放在List<Map<String,String>>中)放在model中在前台使用th:each这种方式遍历取出。然而就是这样一个简单的操作,只要点击进入这个页面时, 浏览器就会报解析表达式异常。后台会给出如下错误信息:cannot be found on object of type 'java.util.HashMap' - maybe not public。一步一步排查之后,发现原来是某天的数据不全,或者说我要展示10个字段,但取出的结果中有个字段不存在,到了页面中我使用如下方式去取数据时,就会出现解析异常;
然后我使用下面这种方式做了非空的判断:
想着这样做了一个判断,给个默认值就ok了,因为之前也这么做过,但是邪门的是它仍旧报这个错,上网搜了好多,我发现大家写的都差不多,但是与我并没有什么用处。就继续谷歌,还真找到了