zoukankan      html  css  js  c++  java
  • Java POJO类直接存储在MongoDB中

    记录Java POJO类直接存储在MongoDB中的策略。

    maven:

    <dependency>
        <groupId>org.mongodb</groupId>
        <artifactId>mongodb-driver</artifactId>
        <version>3.8.0</version>
    </dependency>

    Java POJO类定义:

    public class DiagnoseDocument {
        private ObjectId id;
        private String time;
        private String instance;
        private ArrayList<DiagnsoeResult> result;
    }
    
    
    public class DiagnsoeResult {
        private String instance_name;
        private String rule_name;
        private String problem_level;
        private String problem_name;
        private String problem_detail;
        private String advice;
    }

    插入的方法:

    //复制集连接MongoDB
    String uriString = getURIString(primary);
    // 需要针对对象中的类型设置Codec
    CodecProvider pojoCodecProvider = PojoCodecProvider.builder().register(DiagnoseDocument.class, DiagnsoeResult.class).build();
    CodecRegistry pojoCodecRegistry = fromRegistries(fromCodecs(new StringCodec(), new ObjectIdCodec(), new BsonArrayCodec()), fromProviders(pojoCodecProvider));
    MongoClient mongoClient = new MongoClient(new MongoClientURI(uriString));
    MongoDatabase database = mongoClient.getDatabase("mydb");
    //对Collection中的类型设置Codec
    MongoCollection<DiagnoseDocument> collection = database.getCollection("soar", DiagnoseDocument.class).withCodecRegistry(pojoCodecRegistry);
    collection.insertOne(diagnoseDocument);
  • 相关阅读:
    差分序列
    蓝桥杯 操作格子
    线段树
    历届题目 密文搜索
    对局匹配(动态规划)
    历届试题 分巧克力(二分查找)
    第九届蓝桥杯B组决赛 调手表(完全背包)
    快速幂求余
    2019蓝桥杯国赛备赛题库
    ubuntu16.04安装cuda8.0试错锦集
  • 原文地址:https://www.cnblogs.com/jayinnn/p/10713304.html
Copyright © 2011-2022 走看看