【发布时间】:2017-01-02 14:23:15
【问题描述】:
我无法弄清楚为什么以下内容无法编译。 IDE 给我的错误是“注释属性 RequestParam.defaultValue 的值必须是常量表达式”。
我的项目涉及 Spring 和 Maven,具体如下:
private static final String MAX_LONG_AS_STRING = Long.toString(Long.MAX_VALUE);
@RequestMapping(method=RequestMethod.GET)
public List<Spittle> spittles(
@RequestParam(value="max",
defaultValue=MAX_LONG_AS_STRING) long max,
@RequestParam(value="count", defaultValue="20") int count) {
return spittleRepository.findSpittles(max, count);
}
我认为错误来自 Long 到 String 的转换,但我不知道如何解决它。我将不胜感激任何帮助,我是注释和 Spring 的新手。
【问题讨论】:
-
@EJP 也许她不明白为什么看起来像常数的东西实际上不是常数?这不是微不足道的。
-
太棒了,你的例子和我的一样,我也读过“Spring in action”。这种错误很多
标签: java string spring annotations constants