spring-mvc - @RequestParam defaultvalue 不接受枚举值作为默认值

标签 spring-mvc enums annotations

我正在使用 Spring 支架 Controller 。

这是代码。

@RequestParam(value = "status", required = false, defaultValue = StatusEnum.STATUS.toString())

如果我使用枚举作为 defaultValue,我将得到注释属性 RequestParam.defaultValue 的值必须是常量表达式。

根据我的理解,它应该接受枚举作为默认值。

请指教。

最佳答案

因为它必须是一个字符串,并且必须是一个常量表达式,所以这里唯一真正的选择是使用适用于 Enum.valueOf() 的值,因为这就是如何这最终得到解决。

具体来说,你应该阅读

@RequestParam(value = "status", required = false, defaultValue = "STATUS")

当然,假设“STATUS”StatusEnum.STATUS的字符串值。

关于spring-mvc - @RequestParam defaultvalue 不接受枚举值作为默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11554538/

相关文章:

ios - Swift:将注释标题传递给我的第二个 View Controller 标签

spring-mvc - 防止用户在 spring `Web application` 中使用浏览器后退按钮返回

jquery - 如何将 jquery 事件与 Spring 绑定(bind)以以一种形式执行操作

java - 使用 Spring Framework 为 OPTIONS 请求启用 CORS

java - AngularJS 加载页面,其中包含来自 Controller 的不相关数据(2 个 GETS 还是只有 1 个?)

java - 为什么构造函数未定义?

kotlin - Kotlin 数据类的属性包含/排除

Android:具有枚举比较的数据绑定(bind)表达式

java - GraphQL Java 未正确检测 kotlin 枚举

java - 直接对条纹验证注释进行单元测试