gpt4 book ai didi

java - Jersey 多种产品

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:43:04 26 4
gpt4 key购买 nike

我正在关注 Jersey 教程 here弄清楚如何产生多个 mime 输出。在他们的网站上,这是推荐的方式:

@GET
@Produces({"application/xml", "application/json"})
public String doGetAsXmlOrJson() {
...
}

我想不通的是如何将 @Produces 抽象出来,以便我的代码更欢迎它可以生成的其他 mime 类型。比方说我有 500 个方法都有这个注解:

@Produces({"application/xml", "application/json"})

如果我需要将 kml 添加为 mime 类型,编辑和替换所有这些值肯定会很耗时。

@Produces({"application/xml", "application/json", "application/kml"})

是否可以更有效地构建@Produces,以便我以后不会遇到这个问题?

最佳答案

理解@Produces注解

@Produces注释用于指定资源可以生成并发送回客户端的 MIME 媒体表示类型。

JAX-RS 运行时比较 Accept 的值值为 @Produces 的传入请求 header 注释以匹配将处理此类请求的资源方法。

在没有 @Produces 的情况下注释,假定支持任何媒体类型 (*/*)。如需完整引用,请查看 JAX-RS specification .

你能做什么

减少数量@Produces在您的代码中注释,您可以注释资源类而不是注释资源方法


提示:要减少打字错误,您可以使用常量值:

@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })

看看 MediaType类。

关于java - Jersey 多种产品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38488903/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com