java - 将 "is"前缀添加到 boolean 型 json 请求字段

标签 java jax-rs dropwizard

我正在使用 JAX-RS 和 Dropwizard 来开发 API(我对这两者都很陌生)

例如,我想要一个名为 isInNetwork 的 json 字段。但对我来说奇怪的是,在定义模型和资源之后,我将 inNetwork 视为定义的 json 字段。 (is 前缀已删除)

更具体地说,我将模型定义为:

@JsonProperty
private Boolean isInNetwork;

当我运行服务器时,我看到 "inNetwork": false

想知道这是否是 dropwizard/jax-rs 为 boolean 值默认设置的(我不知道)?

最佳答案

根本不要在字段中使用“is”前缀,因为“is”前缀用于 boolean 字段的 getter。 getIsInNetwork 方法名称看起来很糟糕。

最好为字段指定 JSON 属性名称

@JsonProperty("isInNetwork")
private Boolean inNetwork;

public Boolean isInNetwork() {
  return inNetwork;
}

public void setInNetwork(Boolean inNetwork) {
  return this.inNetwork = inNetwork;
}

关于java - 将 "is"前缀添加到 boolean 型 json 请求字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46460296/

相关文章:

java - 斐波那契螺旋 - Robocode

json - CXF 3.0 和 Spring - 未找到响应类的消息正文阅读器

java - Jersey - 如何模拟服务

java - 保护 Jersey RESTful Web 服务

java - Dropwizard + Jersey : "Not inside a request scope" when creating custom annotation

java - 如何在文件中保存更改后自动重启 Dropwizard 应用程序

java - 如何使用 DataOutPutStream 正确发送 http post 请求以便服务器可以处理它

java - 返回数组的语义

java - 使用 Scala 反射返回类型化函数

java - Gradle : Dependency not getting added to classpath