繁体   English   中英

字段名称可以与泽西岛的setter和getter不同吗?

[英]Can field name be different from setter and getter in Jersey?

嗨,我是Jersey的新手,正在研究一段代码,其中setter的名称定义与字段名称不同。 我很困惑是否允许这样做,并且在通过http发送和接收json数据时实际上可以正常工作。 请有人可以解释一下getter和setter在Jersey框架中的实际工作方式。

public class TestValue{
    private String myLists;

@JsonSafeHtml
public String getMyLists() {
    return myLists;
}

@JsonSafeHtml
public void setMyList(String myLists) {
    this.myLists = myLists;
}

}

默认行为实际上是查看bean属性(getter和setter)。 在这种情况下,字段无关紧要。 将它们命名为方法只是一种惯例。

该getter用于序列化(从java到json)。 get将被从方法中剥离,并且后面的首字母小写。 这将是结果JSON属性名称。

getSomething()    =>  { "something": "value" }
getAnotherThing() =>  { "anotherThing": "value" }

塞特斯用于串行化(JSON到Java)。 set将被删除,小写后的第一个字母。 这是将与JSON属性匹配的方法名称。

{ "something": "value" }  =>  setSomething(String somthing)

// The following leads to an error. It doen't follow the 
// casing rule where the first letter is lowercased
{ "Something": "value" }  =>  setSomething(String somthing)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM