Spring boot 在spring引导中全局设置请求映射配置
我在每个控制器中都有一个请求映射,如下所示,现在我想从应用程序的一个位置设置此配置 这是我的密码:Spring boot 在spring引导中全局设置请求映射配置,spring-boot,Spring Boot,我在每个控制器中都有一个请求映射,如下所示,现在我想从应用程序的一个位置设置此配置 这是我的密码: @RestController(value = "AC1004Controller") @RequestMapping(value = { "api/v1/accounting"},method = RequestMethod.POST ,consumes = {MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_FORM_URLENCO
@RestController(value = "AC1004Controller")
@RequestMapping(value = { "api/v1/accounting"},method = RequestMethod.POST ,consumes = {MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_FORM_URLENCODED_VALUE})
public class AC1004Controller {
}
我的目标编码是,需要从我们的应用程序的一个地方替换以下代码
@RequestMapping(value = { "api/v1/accounting"},method = RequestMethod.POST ,consumes = {MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_FORM_URLENCODED_VALUE})
通常,您可以使用GET、POST等映射控制器的方法 所以下面应该是配置
api.endpoint.accounting=/api/v1/accounting
@RestController(value = "AC1004Controller")
@RequestMapping(value = "${api.endpoint.accounting}")
public class AC1004Controller {
@PostMapping(consumes = {MediaType.APPLICATION_JSON_VALUE,
MediaType.APPLICATION_FORM_URLENCODED_VALUE})
public ResponseEntity<?> addAccount(@RequestBody Account account) {
}
//for get mapping
@GetMapping
public ResponseEntity<?> getAccount() {
}
}
@RestController(value=“AC1004Controller”)
@RequestMapping(value=“${api.endpoint.accounting}”)
公共级AC1004控制器{
@PostMapping(使用={MediaType.APPLICATION\u JSON\u值,
MediaType.APPLICATION_FORM_URLENCODED_VALUE})
公共响应地址帐户(@RequestBody帐户){
}
//用于获取映射
@GetMapping
公共响应getAccount(){
}
}
通常,您可以使用GET、POST等映射控制器的方法 所以下面应该是配置
api.endpoint.accounting=/api/v1/accounting
@RestController(value = "AC1004Controller")
@RequestMapping(value = "${api.endpoint.accounting}")
public class AC1004Controller {
@PostMapping(consumes = {MediaType.APPLICATION_JSON_VALUE,
MediaType.APPLICATION_FORM_URLENCODED_VALUE})
public ResponseEntity<?> addAccount(@RequestBody Account account) {
}
//for get mapping
@GetMapping
public ResponseEntity<?> getAccount() {
}
}
@RestController(value=“AC1004Controller”)
@RequestMapping(value=“${api.endpoint.accounting}”)
公共级AC1004控制器{
@PostMapping(使用={MediaType.APPLICATION\u JSON\u值,
MediaType.APPLICATION_FORM_URLENCODED_VALUE})
公共响应地址帐户(@RequestBody帐户){
}
//用于获取映射
@GetMapping
公共响应getAccount(){
}
}
您只需将这些配置中的任何一个放在应用程序属性文件(yaml或属性)中即可
您只需将这些配置中的任何一个放在应用程序属性文件(yaml或属性)中即可
您需要在
application.properties
文件中设置spring.mvc.servlet.path
属性。
这样地:
spring.mvc.servlet.path=/AC1004Controller
您需要在application.properties
文件中设置spring.mvc.servlet.path
属性。
这样地:
spring.mvc.servlet.path=/AC1004Controller
获取此行api.endpoint.accounting=api/v1/accounting的错误是否在application.properties中定义了它?那么错误是从哪里来的呢???@shohel很抱歉在启动api.endpoint.accounting=/api/v1/accounting时出现了输入错误使用斜杠,我是spring boot的新手,我不理解您的术语。我在pom.xmlok中定义了application.properties,您应该在/src/main/resources下有一个application.properties文件,您可以在其中定义属性,它们可以像${}在请求映射中调用的那样调用所以,在我给出的路径下定义它。获取此行的错误api.endpoint.accounting=api/v1/accounting您在application.properties中定义了它吗?那么错误是从哪里来的呢???@shohel很抱歉在启动api.endpoint.accounting=/api/v1/accounting时出现了输入错误使用斜杠,我是spring boot的新手,我不理解您的术语。我在pom.xmlok中定义了application.properties,您应该在/src/main/resources下有一个application.properties文件,您可以在其中定义属性,它们可以像${}在请求映射中调用的那样被调用,所以在我给出的路径下定义它。