Java 自动添加";标题“;及;生产;my@RequestMapping的属性

Java 自动添加";标题“;及;生产;my@RequestMapping的属性,java,json,spring,rest,spring-mvc,Java,Json,Spring,Rest,Spring Mvc,我通过SpringMVC实现了一个RESTAPI。下面是一个映射示例: @RequestMapping(value=“/videos”,method=RequestMethod.GET,headers=“Accept=application/json”,products=“application/json”) 它们有很多,所以我想知道是否有可能分解标题和生成属性,这样我就不必在每个映射中指定它们,以减轻代码的负担 最好是自动设置两个属性的自定义注释,例如: @JsonRequestMappin

我通过SpringMVC实现了一个RESTAPI。下面是一个映射示例:

@RequestMapping(value=“/videos”,method=RequestMethod.GET,headers=“Accept=application/json”,products=“application/json”)
它们有很多,所以我想知道是否有可能分解
标题
生成
属性,这样我就不必在每个映射中指定它们,以减轻代码的负担

最好是自动设置两个属性的自定义注释,例如:

@JsonRequestMapping(value=“/videos”,method=RequestMethod.GET)

但是我还没有实现这样一个…

您可以将
@RequestMapping
也放在方法旁边的类上(请参阅)。如果希望全局可用的属性在类上放置一个
@RequestMapping
,则该属性将与方法上的属性合并

@Controller
@RequestMapping(headers = "Accept=application/json", produces = "application/json")
public class YourController { ... }
那么您的方法只包含方法和url

@RequestMapping(value="/videos", method=RequestMethod.GET)
public Object someMethod(...) { ... }
您可能还想了解一下,因为这也为您的控制器配置了一些默认值。就像你的方法不再需要
@ResponseBody

@RestController
public class YourController { ... }

@RequestMapping
添加到包含全局属性的基类。然后在YOUR方法上,您只需要添加
@RequestMapping(“/videos”)
。根据Spring的版本,您还可以使用
@RestController
而不是已经为您定制了一些东西的
@Controller