如何使用Java在mongodb中添加新字段

时间:2019-09-20 04:45:04

标签: java arrays

使用Java代码,我需要在mongo db中添加新的字段名称。在更新代码时,我添加了新的列名。

public JSONObject addbeneficiaryCode() {        
    JSONArray jsonArrResult = new JSONArray();
    ((List<JSONObject>)ObjectRepository.INSTANCE.get(new JSONObject()
            .add(QUERY, new JSONObject()
                .add(OBJECT_NAME, ObjectName.MASTER)
            )
            .add(PROJECT, new JSONArray()
                    .add(DATA)
                    .add("_id")
                    .add("code")
            )
    )).forEach(j->{

        JSONObject json = j;    

        json.add("new_code", code+"-1");

        ObjectRepository.INSTANCE.update(new JSONObject()
                .add(QUERY, new JSONObject()
                    .add(_ID,j.getString("_id"))
                    .add(OBJECT_NAME, ObjectName.MASTER)
                .add(SET, new JSONObject()
                         .add("new_code",code+"-1")
                        )
        );
    });
    return null;
}

ObjectRepository.INSTANCE.update(new JSONObject()
                    .add(QUERY, new JSONObject()
                        .add(_ID,j.getString("_id"))
                        .add(OBJECT_NAME, ObjectName.MASTER)
                        )
                    .add(SET, new JSONObject()
                            .add("new_code",code+"-1")

                            )
            );

我要显示的输出是:

{
    _id : ObjectId("5d5ff2c6bdba954eacaca632")
    code: 13244
    new_code: 13244-1
}

Mongo数据库中的实际数据为:

{
    _id : ObjectId("5d5ff2c6bdba954eacaca632")
    code: 13244
}

在这里我要添加新字段new_code。当我添加new_code时,由于内部服务器错误,我得到了未知来源。

0 个答案:

没有答案