如何使用Spark Java框架存储JSON对象



我想创建一个模型,其结构如下所示

"SettingsConfiguration":{
   loadingOccupancy:[
      {
         berthId:Number,
         laneId:Number,
         berthCapacity:Number,
         routeNo:String,
         speciallyChallengedCapacity:Number
      }
   ],
   smsNotification:{
      phoneNo:Number,
      smsSendingStatus:Boolean
   }
}

使用Spark Java,我能够为简单结构进行操作,如下所示

package com.models;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import org.bson.types.ObjectId;
public class Map {
    private String id;
    private String title;

    public Map(BasicDBObject dbObject) {
        this.id = ((ObjectId) dbObject.get("_id")).toString();
        this.title = dbObject.getString("title");

    }
    public String getTitle() {
        return title;
    }
}

,但不确定如何为上述数据结构构建类请帮助如何构建课程,即如何解析和存储上述JSON格式,该格式来自请求正文

您可以尝试的步骤>1.使用方法httpservletrequest请求的方法读取请求,例如:受保护的void dopost(httpservletrequest request)。2.尝试写这样的方法:

protected void doPost(HttpServletRequest request){
String jsonString = IOUtils.toString(request.getInputStream());
try {
            jsonObject = new JSONObject(jsonString);
            JSONArray entryArray = new JSONArray(jsonObject.get("SettingsConfiguration")
                    .toString());
            JSONObject entryObj = entryArray.getJSONObject(0);
            JSONArray loadingOccupancyArray = new JSONArray(entryObj.get("loadingOccupancy")
                    .toString());
            JSONObject loadingOccupancyObject = loadingOccupancyArray.getJSONObject(0);
            JSONObject sender = (JSONObject) loadingOccupancyObject.get("berthId");
            JSONObject recipient = (JSONObject) loadingOccupancyObject.get("laneId");
            JSONObject message = (JSONObject) loadingOccupancyObject.get("laneId");
            System.out.println("message = " + message.get("text"));
            System.out.println("sender = " + sender.get("id"));
            System.out.println("recipient = " + recipient.get("id"));
        } catch (JSONException e) {
            e.printStackTrace();
        }
}

使用Jackson [Java Json Parser(http://jackson.codehaus.org)]库。请参阅解析JSON文件Java以获取更多信息

最新更新