Java解析JSON报文
mport com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
public class JSONData {
public static <T> List<T> paeseJSONData(String jsonData, Class<T> beanType) {
List<T> list = new ArrayList<>();
Map map = JSON.parseObject(jsonData, Map.class);
JSONArray jsonArray = JSONArray.parseArray(map.get("data").toString());
for (Object o : jsonArray) {
String s = JSONObject.toJSON(o).toString();
T data = JSON.parseObject(s, beanType);
list.add(data);
}
return list;
}
public static void main(String[] args) {
String jsonData = "{\"dataflage\": \"00XX00\",\"MsgLeng\": 12,\"data\":[{\"name\":\"zhangsan\",\"age\":12},{\"name\":\"lisi\",\"age\":13}]}";
List<User> infos = paeseJSONData(jsonData, User.class);
System.out.println(infos);
}
}
@Data
@NoArgsConstructor
@AllArgsConstructor
class User{
private String name;
private Integer age;
}