这是我的JSON字符串:"{'userName' : 'Bachooo'}"
将JSON字符串转换为LoginVO逻辑如下:
Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
LoginVO loginFrom = gson.fromJson(jsonInString, LoginVO.class);
System.out.println("userName " + loginFrom.getUserName()); // output null
我的LoginVO.class是:
public class LoginVO {
private String userName;
private String password;
public String getUserName()
{
return userName;
}
public void setUserName(String userName)
{
this.userName = userName;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
}
注意,我正在使用jdk 1.8.0_92
loginForm.getUserName()的输出是NULL
而不是"Bachooo"
。你对这个问题有什么想法吗?
Gson gson = new Gson()
,会发生什么? - OneCricketeerexcludeFieldsWithoutExposeAnnotation
是什么意思?它的意思是“只暴露被注释的字段,忽略其余的字段”。 - Braj