EL1008E: Property or field ‘setmeal‘ cannot be found on object of type ‘org.springframework.cache.in

org.springframework.expression.spel.SpelEvaluationException: EL1008E: Property or field ‘setmeal’ cannot be found on object of type ‘org.springframework.cache.interceptor.CacheExpressionRootObject’ - maybe not public or not valid?
at org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:217)

问题解决: 看到setmeal的错误字段就想到了 key 所以一看key 就知道少写了一个#符号

在这里插入图片描述

    /**
     * 查询所有套餐列表
     *
     * @param setmeal setmeal
     * @return {@link List}<{@link Setmeal}>
     */
    @Override
//    @Cacheable(value = "setmeals",key = "#setmeal.categoryId+'_'+setmeal.status") //这里少了一个#符号
    @Cacheable(value = "setmeals",key = "#setmeal.categoryId+'_'+#setmeal.status")
    public List<Setmeal> list(Setmeal setmeal) {
        List<Setmeal> setmealList = setmealMapper.list(setmeal);
        return setmealList;
    }

版权声明:本文为xujunming668原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。