Java 请求映射和静态字段
我正在尝试为Java 请求映射和静态字段,java,spring-boot,compiler-errors,static,request-mapping,Java,Spring Boot,Compiler Errors,Static,Request Mapping,我正在尝试为@RequestMapping注释设置值,如下所示: @请求映射(值=值) 现在,我注意到这是不合法的,因为我犯了这个错误: 属性值必须是常量 有人能解释一下为什么会这样吗 属性值必须是常量 简单地说,您不能为端点分配变量或一些随机值,如VALUE。您应该提供一个常量字符串或其倍数,如以下示例所示: @RequestMapping(value = "/value") public class SomeClass {} @RequestMapping("
@RequestMapping
注释设置值,如下所示:
@请求映射(值=值)
现在,我注意到这是不合法的,因为我犯了这个错误:
属性值必须是常量
有人能解释一下为什么会这样吗
属性值必须是常量
简单地说,您不能为端点分配变量或一些随机值,如VALUE
。您应该提供一个常量字符串或其倍数,如以下示例所示:
@RequestMapping(value = "/value")
public class SomeClass {}
@RequestMapping("/value")
public class SomeClass {}
@RequestMapping(value = {"/value", "/"})
public class SomeClass {}
您不能将随机值作为端点。您可以使用
public final static String value=“some random value”
并工作。为什么它不适用于public final static String value=randomValue()代码>?您应该删除final
关键字,然后它就可以工作了。当您将一个变量声明为final时,它应该有一个常量值它不能通过删除final
来工作,因为@RequestMapping
需要常量。@DonatoAmasa,那么,您是说public final static String VALUE=randomValue()
不是常数吗?我指的是类SomeClass
@RequestMapping(value = "/value")
public class SomeClass {}
@RequestMapping("/value")
public class SomeClass {}
@RequestMapping(value = {"/value", "/"})
public class SomeClass {}