关于FastJson bean中首字母大写与二层bean的问题。


1.首字母大写只要在bean前面get上加上

  @JsonProperty(value = "Name")  
即可。

例如

	private String AppSysID;//APP版本号
        @JSONField(name = "AppSysID")
	public String getAppSysID() {
		return AppSysID;
	}
	public void setAppSysID(String AppSysID) {
		this.AppSysID = AppSysID;
	}


2.如果bean外面需要包一层。例如

{"Bean":{ "AppSysID":"10.1" }}

则bean类为

{"Bean":{ "AppSysID":"10.1" }}

public class DevInfo {
	public Bean Bean;  
        public class  Bean {  
		private String AppSysID;//APP版本号
                @JSONField(name = "AppSysID")
		public String getAppSysID() {
			return AppSysID;
		}
		public void setAppSysID(String appSysID) {
			AppSysID = appSysID;
		}

        }
 
        @JSONField(name = "Bean")
	public Bean  getBean () {
		return Bean ;
	}

	public void setBean (Bean  getBean ) {
		this.Bean  = getBean ;
	}

}

 然后转成JSON
DevInfo devinfo = new DevInfo();
Bean devSend = devinfo.new Bean();
devSend.setAppSysID("1");
devinfo.setBean(devSend);
JSONObject devIDJSONObj = JSONObject.parseObject(JSON.toJSONString(devinfo));
String json = devIDJSONObj.toJSONString();
System.out.println(json);


输出是这个:{"Bean":{"AppSysID":"1"}}



=-=嗯就是这样了。。



猜你喜欢

转载自blog.csdn.net/R_ine/article/details/73457089