net.sf.json.JSONException: java.lang.NoSuchMethodException: com.mongodb.bean.UserInfo$EducationEx.()
原因1:前台传进的值与后台需要的值不一样,前台传的是String,后台JSON转化时,对象数据类型不一样.
前台的时间是String
后台的时间是Data类型
解决:在后台将取到值在转化对象时,先对日期进行处理.
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
JSONObject jsonOb=null;
if (StringUtils.isNotBlank(jobExs)) {
JSONArray jobArray = JSONArray.fromObject(jobExs);
List<JobEx> jobList = new ArrayList<JobEx>();
for (Object object : jobArray) {
if(!object.equals("")||object=="null"){
jsonOb=JSONObject.fromObject(object);
if(StringUtils.isNotBlank(jsonOb.get("startDate").toString())){
jsonOb.put("startDate", sdf.parse(jsonOb.get("startDate").toString()));
}else{
jsonOb.put("startDate", null);
}
if(StringUtils.isNotBlank(jsonOb.get("endDate").toString())) {
jsonOb.put("endDate", sdf.parse(jsonOb.get("endDate").toString()));
}else {
jsonOb.put("endDate", null);
}
JobEx jo = (JobEx) JSONObject.toBean(jsonOb, JobEx.class);
jobList.add(jo);
}
}