import java.io.Serializable;
import java.util.List;
import com.alibaba.fastjson.JSONObject;
//通过Serializable的toString方法,将类转变为json字符串
public class AwardPara implements Serializable {
private String merchantId;
private String sn;
private String timestamp;
private Body body;//内部类
public String getMerchantId() {
return merchantId;
}
public void setMerchantId(String merchantId) {
this.merchantId = merchantId;
}
public String getSn() {
return sn;
}
public void setSn(String sn) {
this.sn = sn;
}
public String getTimestamp() {
return timestamp;
}
public void setTimestamp(String timestamp) {
this.timestamp = timestamp;
}
//注意内部类的set方法
public Body getBody() {
return body;
}
//内部类通过内部类的构造器和set方法进行赋值
public void setBody(String issue,String lotoId) {
this.body = new Body(issue,lotoId);
}
//外部参数通过构造器赋值
public AwardPara(String merchantId, String sn,String timestamp) {
this.merchantId = merchantId;
this.sn = sn;
this.timestamp = timestamp;
}
public static class Body implements Serializable {
private String issue;
private String lotoId;
//内部类的构造器
public Body (String issue,String lotoId){
this.issue = issue;
this.lotoId = lotoId;
}
public String getIssue() {
return issue;
}
public void setIssue(String issue) {
this.issue = issue;
}
public String getLotoId() {
return lotoId;
}
public void setLotoId(String lotoId) {
this.lotoId = lotoId;
}
}
@Override
public String toString() {
return JSONObject.toJSONString(this);
}
}
2、下面是如何调用该实体类并赋值
//实体类外部参数赋值
AwardPara awardPara = new AwardPara(merchantId,"01201605311237390001","2017");
//实体类的内部类赋值
awardPara.setBody("2017077", "101");
//将实体类转换为json字符串,
String para = awardPara.toString();
3、得到的para的结果如下
{"body":{"issue":"2017077","lotoId":"101"},"merchantId":"0029","sn":"01201605311237390001","timestamp":"2017"}