使用多个消费和生产的Spring控制器application/json
,我的代码到处都是长注释,例如:
@RequestMapping(value = "/foo", method = RequestMethod.POST,
consumes = MediaType.APPLICATION_JSON_VALUE,
produces = MediaType.APPLICATION_JSON_VALUE)
有没有产生“复合/继承/聚合”与注释的方式 默认 为值consumes
和produces
,这样,我可以代替写是这样的:
@JSONRequestMapping(value = "/foo", method = RequestMethod.POST)
我们如何定义@JSONRequestMapping
上面的东西?注意value
和method
一样,传入了和@RequestMapping
,也可以传入,consumes
或者produces
如果默认值不合适,也很好。
我需要控制我要返回的内容。我需要produces
/ consumes
批注方法,以便获得适当的Content-Type
标题。
从Spring 4.2.x开始,您可以创建自定义映射注释,并将其@RequestMapping
用作元注释。所以:
有没有一种方法可以产生带有消费和生产默认值的“复合/继承/聚合”注释,所以我可以这样写:
@JSONRequestMapping(value = "/foo", method = RequestMethod.POST)
是的,有这种方法。您可以创建如下的元注释:
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@RequestMapping(consumes = "application/json", produces = "application/json")
public @interface JsonRequestMapping {
@AliasFor(annotation = RequestMapping.class, attribute = "value")
String[] value() default {};
@AliasFor(annotation = RequestMapping.class, attribute = "method")
RequestMethod[] method() default {};
@AliasFor(annotation = RequestMapping.class, attribute = "params")
String[] params() default {};
@AliasFor(annotation = RequestMapping.class, attribute = "headers")
String[] headers() default {};
@AliasFor(annotation = RequestMapping.class, attribute = "consumes")
String[] consumes() default {};
@AliasFor(annotation = RequestMapping.class, attribute = "produces")
String[] produces() default {};
}
然后,您可以使用默认设置,甚至可以根据需要覆盖它们:
@JsonRequestMapping(method = POST)
public String defaultSettings() {
return "Default settings";
}
@JsonRequestMapping(value = "/override", method = PUT, produces = "text/plain")
public String overrideSome(@RequestBody String json) {
return json;
}
您可以AliasFor
在spring的javadoc和github
Wiki中
了解更多信息。
我需要控制我回来的东西。我希望/注释方法,以便获得适当的头。
问题内容: 因此,我使用此链接来设置进度条,并且在运行此代码时效果很好。 但是,使用我拥有的设置,我似乎无法获得progressbar进行实际更新… progressBar.getProgress()实际上获得了正确的进度,但是UI并未更新。这是到目前为止的代码: Main.java ProgressBarController.java ProgressBarLayout.fxml 问题答案: 在
另一个问题是我为什么需要LTS?我认为如果我们不采取LTS,那么任何我们都得不到任何支持/补丁的缺陷(或安全补丁)。对吧?
问题内容: 我正在使用ElasticSearch进行第一步,并从命令行测试当前正在使用curl的东西。但是,这有点烦人,因为我必须在文本编辑器上键入所有内容,然后粘贴到控制台中(控制台中没有选项卡格式),并且得到的json输出未格式化。 因此,我想知道是否有许多与json数据配合使用的SQL控制台,以使其更易于测试和使用json rest网络服务。 您使用什么工具执行此类任务? 问题答案: 首先,
问题内容: 我正在用Java编写一个简单的控制台应用程序(80x24),是否有等效的gotoxy(x,y)? 问题答案: 如果要通过gotoxy(x,y)将光标重新定位在控制台上特定的位置,则通常可以使用VT100控制代码来执行此操作。参见http://www.termsys.demon.co.uk/vtansi.htm。 做类似的事情 它将光标移动到控制台上的位置10,10。
本文向大家介绍修改不适用于SAP ABAP中的内部表和控制表,包括了修改不适用于SAP ABAP中的内部表和控制表的使用技巧和注意事项,需要的朋友参考一下 您的更新模型似乎有些错误。PFB更新了一个 示例