Java 在SpringMVC中创建全局变量的最佳方法
我所有的控制器请求映射url都以相同的变量开始Java 在SpringMVC中创建全局变量的最佳方法,java,spring,spring-mvc,variables,Java,Spring,Spring Mvc,Variables,我所有的控制器请求映射url都以相同的变量开始 myController/blablabal 我正在考虑创建一个全局变量来替换myController,因此将来如果我更改URL名称,我只需要在一个位置进行更改。 我目前的做法是创建一个bean。 我的bean配置文件: <bean id="controllerURL" class="java.lang.String"> <constructor-arg type="String" value="tt"/> <
myController/blablabal
我正在考虑创建一个全局变量来替换myController,因此将来如果我更改URL名称,我只需要在一个位置进行更改。
我目前的做法是创建一个bean。
我的bean配置文件:
<bean id="controllerURL" class="java.lang.String">
<constructor-arg type="String" value="tt"/>
</bean>
但是,我似乎无法正确访问此变量controllerURL。我有什么遗漏吗?或者我们有更好的方法在SpringMVC中创建全局变量吗?创建一个常量并使用它。编译器将在编译时合并常量和剩余url
公共类MyConstants{
公共静态最终字符串路径_PREFIX=/myController/blabal;
}
导入MyConstants.PATH\u前缀;
@控制器
公共类MyController{
@RequestMappingpath=PATH_PREFIX+/qrcode/blablbal,method=RequestMethod.GET
//这里的方法
}
创建一个常量并使用它。编译器将在编译时合并常量和剩余url
公共类MyConstants{
公共静态最终字符串路径_PREFIX=/myController/blabal;
}
导入MyConstants.PATH\u前缀;
@控制器
公共类MyController{
@RequestMappingpath=PATH_PREFIX+/qrcode/blablbal,method=RequestMethod.GET
//这里的方法
}
您可以使用bean创建全局变量,如下所示 1.在你的bean声明中 在构造函数类型属性中使用java.lang.String而不是String
<bean id="controllerURL" class="java.lang.String">
<constructor-arg type="java.lang.String" value="tt"/>
</bean>
您可以使用bean创建全局变量,如下所示 1.在你的bean声明中 在构造函数类型属性中使用java.lang.String而不是String
<bean id="controllerURL" class="java.lang.String">
<constructor-arg type="java.lang.String" value="tt"/>
</bean>
我将使用基本URL创建一个BaseController
import org.springframework.web.bind.annotation.RequestMapping;
@RequestMapping("/base")
public class BaseController {
}
并加以实施
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MyController extends BaseController{
@RequestMapping("/hello")
String hello(){
return "Hello";
}
}
我将使用基本URL创建一个BaseController
import org.springframework.web.bind.annotation.RequestMapping;
@RequestMapping("/base")
public class BaseController {
}
并加以实施
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MyController extends BaseController{
@RequestMapping("/hello")
String hello(){
return "Hello";
}
}
这就是为什么我在想..但我真的想学习如何创建一个bean作为全局变量。这就是为什么我在想..但我真的想学习如何创建一个bean作为全局变量。当我尝试这个时,它说属性必须是常量。我相信controllerURL必须是静态final。如果它必须是静态final,那么它可能必须被初始化。当我尝试这个时,它说属性必须是常量。我相信controllerURL必须是静态final。如果它必须是静态final,那么它可能必须被初始化。