美文网首页
java+mongo读写

java+mongo读写

作者: 帅八戒 | 来源:发表于2021-05-20 15:46 被阅读0次

1.依赖:

 <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongo-java-driver</artifactId>
            <version>3.0.4</version>
        </dependency>
<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.47</version>
        </dependency>
<dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.8.5</version>
        </dependency>

2.创建连接:

public static MongoDatabase init() {
//        链接mongodb数据库
        List<ServerAddress> adds = new ArrayList<>();
        ServerAddress serverAddress = new ServerAddress("localhost", 27017);
        adds.add(serverAddress);
        List<MongoCredential> credentials = new ArrayList<>();
        MongoCredential mongoCredential = MongoCredential.createScramSha1Credential(
                "username",
                "databaseName",
                "password".toCharArray()
        );
        credentials.add(mongoCredential);
        MongoClient mongoClient = new MongoClient(adds, credentials);
        MongoDatabase mongoDatabase = mongoClient.getDatabase("databaseName");
//        mongoClient.close();
        return mongoDatabase;
    }

3.查询数据:

   public  List<String> findMongo(String table,JSONObject query) {
       List<String> policyList = new ArrayList();
       MongoDatabase mongoDatabase = MongoDBPO.init();
       MongoCollection<Document> collection = mongoDatabase.getCollection(table);
//        过滤条件
       String name=query.getString("name");
       Bson filter = Filters.eq(name, query.get("value"));
       FindIterable findIterable = collection.find(filter);
       MongoCursor cursor = findIterable.iterator();
       while (cursor.hasNext()) {
           Object dbObject = cursor.next();
           String a = JSON.serialize(dbObject);
           policyList.add(a);
       }
//        System.out.println(policyList);
       return policyList;
   }

3.插入对象:

    public void  insertMongo(String tname){
//        创建数据对象
        Person gj =new Person();
        Gson gson = new Gson();
//        链接mongo
        MongoDatabase db = MongoDBPO.init();
        MongoCollection<Document> doc =  db.getCollection(tname);
//将对象转换为字符串
        String jsonobj = gson.toJson(gj);
//        将字符串转换为 Document类型 插入数据库
        Document document = Document.parse(jsonobj);
        doc.insertOne(document);
    }
}

4.对象:

public class Person{
    private String name="zhangsan";
    private String age="22";
    private String sex= "M";
}

相关文章

网友评论

      本文标题:java+mongo读写

      本文链接:https://www.haomeiwen.com/subject/fxcbjltx.html