0

我正在编写一个 java 代码以使用 java 代码将表单值插入 mongoDB。我正在使用地图从地图中检索所有值并将其插入到 mongoDB 中。但是,如果一个属性有多个值,它只会插入一个值。我的代码是:

Map<String, String[]> articleData =  request.getParameterMap();
for(String key : articleData.keySet())
{
    for(int i=0; i<articleData.get(key).length;i++)
{

 document.put(key,articleData.get(key)[i]);
 }
 }
table.insert(document);

但是,现在,它正在覆盖具有多个值的属性的值。我该如何解决?

4

2 回答 2

0

试试这个,它会给你一个基本的想法。根据您的程序调整代码:

Map<String, String[]> articleData =  request.getParameterMap();
for(String key : articleData.keySet())
{
    BasicDBObject data =new BasicDBObject();
    for(int i=0; i<articleData.get(key).length;i++)
       {
         data.put("",articleData.get(key)[i]);

       }
     document.put(key,data);
 }
table.insert(document);
于 2013-09-23T06:20:41.033 回答
0

对 JSON 对象进行编码。试试这个。

Map<String, String[]> articleData =  request.getParameterMap();
for(String key : articleData.keySet())
{

            JSONObject out = new JSONObject();
            out.put("key", key);
            out.put("value", articleData.get(key));
            System.out.println(out);

 }
 dbobj.put("multiple",out);
collection.insert(dbobj);
于 2013-10-08T07:49:25.380 回答