package mongoUtil;

import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; /**
*/
public class MongodbutilTest {
public static void main(String args[]){
MongodbutilTest a= new MongodbutilTest(); // a.queryByUid();
a.addDocs(); //a.queryByTagsIdAndValue(); //a.queryByUidAndUpdateTagValue(); // a.queryByUidAndDeleteTag(); // a.queryByUidAndAddTag(); //a.addIndex(); } public void addDocs(){
MongoHelper a = new MongoHelper();
MongoDatabase c = a.getMongoDataBase();
MongoCollection<Document> collection= c.getCollection("bdp_user_tag_test2");
for(int index = 0;index < 1000 ;index++){
//BASE_INFO_LIST
List baseInfoList = new ArrayList<Document>();
Document baseInfo1 = new Document("INFO_CODE", "BASE01").append("INFO_VALUE","1");
Document baseInfo2 = new Document("INFO_CODE", "BASE02").append("INFO_VALUE","2");
Document baseInfo3 = new Document("INFO_CODE", "BASE0"+index).append("INFO_VALUE","0"+index);
baseInfoList.add(baseInfo1);
baseInfoList.add(baseInfo2);
baseInfoList.add(baseInfo3); List baseList = new ArrayList<Document>();
Document basetag1 = new Document("TAG_CODE","1").append("TAG_VALUE","01");
Document basetag2 = new Document("TAG_CODE","2").append("TAG_VALUE","02");
Document basetag3 = new Document("TAG_CODE",""+index).append("TAG_VALUE","0"+index);
baseList.add(basetag1);
baseList.add(basetag2);
baseList.add(basetag3); List etOneList = new ArrayList<Document>();
Document ettag1 = new Document("ET_CODE","ET01").append("ET_VALUE","AAAAA");
Document ettag2 = new Document("ET_CODE","ET02").append("ET_VALUE","BBBBB");
Document ettag3 = new Document("ET_CODE","ET0"+index).append("ET_VALUE","CCCCC"+index);
etOneList.add(ettag1);
etOneList.add(ettag2);
etOneList.add(ettag3); //List etList2 = new ArrayList<List>();
List etOne2List = new ArrayList<Document>();
Document ettag21 = new Document("ET_CODE","ET01").append("ET_VALUE","AAAAA");
Document ettag22 = new Document("ET_CODE","ET02").append("ET_VALUE","BBBBB");
Document ettag23 = new Document("ET_CODE","ET03").append("ET_VALUE","CCCCC");
etOne2List.add(ettag21);
etOne2List.add(ettag22);
etOne2List.add(ettag23); List document2 = new ArrayList<Document>();
Document documentEle1 = new Document("ET_ONE_LIST",etOneList);
Document documentEle2 = new Document("ET_ONE_LIST",etOne2List);
document2.add(documentEle1);
document2.add(documentEle2); Document document = new Document("UID","00000000"+index)
.append("CREATE_DATE","2016-10-21 00:00:00")
.append("OP_DATE","2016-10-21 00:00:00")
.append("BASE_INFO_LIST",baseInfoList)
.append("BASE_TAG_LIST",baseList)
.append("ET_TAG_LIST",document2);
System.out.println(index);
collection.insertOne(document); }
} }

数据格式:

{
"_id" : ObjectId("5bc058e679204c04a49e67be"),
"UID" : "000001000",
"CREATE_DATE" : "2016-10-21 00:00:00",
"OP_DATE" : "2016-10-21 00:00:00",
"BASE_INFO_LIST" : [
{
"INFO_CODE" : "BASE01",
"INFO_VALUE" : "1"
},
{
"INFO_CODE" : "BASE02",
"INFO_VALUE" : "2"
},
{
"INFO_CODE" : "BASE01",
"INFO_VALUE" : "3"
}
],
"BASE_TAG_LIST" : [
{
"TAG_CODE" : "1",
"TAG_VALUE" : "01"
},
{
"TAG_CODE" : "2",
"TAG_VALUE" : "02"
},
{
"TAG_CODE" : "3",
"TAG_VALUE" : "03"
}
],
"ET_TAG_LIST" : [
{
"ET_ONE_LIST" : [
{
"ET_CODE" : "ET01",
"ET_VALUE" : "AAAAA"
},
{
"ET_CODE" : "ET02",
"ET_VALUE" : "BBBBB"
},
{
"ET_CODE" : "ET03",
"ET_VALUE" : "CCCCC"
}
]
},
{
"ET_ONE_LIST" : [
{
"ET_CODE" : "ET01",
"ET_VALUE" : "AAAAA"
},
{
"ET_CODE" : "ET02",
"ET_VALUE" : "BBBBB"
},
{
"ET_CODE" : "ET03",
"ET_VALUE" : "CCCCC"
}
]
}
]
}

mongoDb造数据的更多相关文章

  1. MongoDB丢数据问题的分析

    坊间有很多传说MongoDB会丢数据.特别是最近有一个InfoQ翻译的Sven的一篇水文(为什么叫做水文?因为里面并没有他自己的原创,只是搜罗了一些网上的博客,炒了些冷饭吃),其中又提到了丢数据的事情 ...

  2. 【mongodb系统学习之十二】mongodb修改数据(一)

    十二.mongodb修改数据:update 1).修改数据库数据:update:语法 db.collectionName.update({},{},boolean,boolean): 2).updat ...

  3. mongoDB 插入数据 用java实现

    import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mongodb.DB; impor ...

  4. SQL Server 用表中已有数据造数据

    从表中选择数据再插入到表中(select XXX into 与insert into XXX select的结合) 在做性能测试时需要大量的业务数据.完全从画面造数据比较费时间,使用SQL文批量插入数 ...

  5. 【mongodb系统学习之十一】mongodb删除数据

    十一.mongodb删除数据: 1).删除全部文档:remove,语法db.collectionName.remove({}):小括号里边必须要有条件,否则不成功:如果只是一个空的{},则会删除集合内 ...

  6. 【mongodb系统学习之九】mongodb保存数据

    九.mongodb保存数据: 1).插入.保存数据:insert:语法db.collectionName.insert({"key":value}),key是字段名,必须是字符串( ...

  7. MySQL到MongoDB的数据同步方法!

    许多公司随着业务发展,单数据库实例已经不能满足业务需要,需要定期进行数据交换,同步到MongoDB, 或其他位置的MySQL,以分散数据库的并发压力. 目前大部分都采用自行开发的方式处理,存在开发成本 ...

  8. NodeJs之EXCEL文件导入导出MongoDB数据库数据

    NodeJs之EXCEL文件导入导出MongoDB数据库数据 一,介绍与需求 1.1,介绍 (1),node-xlsx : 基于Node.js解析excel文件数据及生成excel文件. (2),ex ...

  9. 前端工具mock的使用 - 造数据模拟网络请求

    前后端同步开发过程中,有时候前端页面完成了,需要等待后端接口完成部署后才能联调. 这个时候如果不想等待,想自己造数据模拟网络请求,这种情况就能用到mock工具了. mock工具可以用在web网站,也能 ...

随机推荐

  1. azkaban的简单使用

    简单使用 create job 右上角 project创建成功 创建job并上传至该project [root@localhost ~]# cat command.job #command.job t ...

  2. 6Linux用户身份与文件权限

    3类用户身份: (1)管理员UID为0,root (2)系统用户UID为1-999:nologin不能登录系统,老版本5.6中是1-499 (3)普通用户UID为1000开始,老版本5.6中是1000 ...

  3. nodeJs 使用 express-http-proxy 转发请求

    开发过程中经常需要用到 nodeJs做转发层 使用express配合 express-http-proxy 可以轻松的完成转发 使用过程: 安装 express-http-proxy npm inst ...

  4. React16的interactiveUpdates

    交互式更新是用户交互的结果. 它们比默认的非交互式更新(如服务器事件)具有更高的优先级. 异步模式下交互式更新的特殊之处在于,一次交互式更新可能会影响后续行为. 例如,一个表单字段上的"提交 ...

  5. linux 环境变量 转

    https://www.cnblogs.com/aaronLinux/p/5837702.html export PATH=/home/one/:$PATH export PATH=$PATH:/ho ...

  6. Web用户登录---验证码的设计与实现

    在开发中验证码是比较常用到有效防止这种问题对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试的方式. 验证码生成步骤:1.获得随机生成的颜色,画出随机线条生成背景底.2.String cod ...

  7. .net core 获取客户端ip

    1.NUGET安装 Microsoft.AspNetCore.Http 2.在 startup.cs 的 ConfigureServices 中注入 services.AddSingleton< ...

  8. java基础 -- 经典排序

    ----  冒泡排序 方法: 1.每次比较相邻的两个数 2. 小的交换在前面 3.每轮结束后最大的数交换到最后 代码实现: /* * 冒泡排序 * */ public class SortNum { ...

  9. 【转载】chown和chmod使用

    二.指令名称 : chown 使用权限 : root 使用方式 : chown [-cfhvR] [--help] [--version] user[:group] file... 说明 : Linu ...

  10. 开发模型之V模型

    1.模型目的: V模型的目的在于改进软件开发的效率和效果. 2.常见理论性描述:  V模型从整体上看起来,就是一个V字型的结构,由左右两边组成. 左边的下划线分别代表了需求分析.概要设计.详细设计.编 ...