MongoDB入门学习记录二:java操作MongoDB

Stella981
• 阅读 598

准备驱动包

下载地址:http://central.maven.org/maven2/org/mongodb/mongo-java-driver

连接数据库

//1、连接到mongodb指定的服务器上,这个类的构造函数有很多种,以应对不同情况下的连接
MongoClient client = new MongoClient("127.0.0.1", 27017);    
//2、取得要连接的数据库
MongoDatabase dataBase = client.getDatabase("mytest");

关于连接mogondb的各种情况这里不做详细研究。

实现增删改查

这里直接贴代码不做仔细说明,详细可参考:http://www.runoob.com/mongodb/mongodb-java.html

package cn.zxy.mongodb;

import java.util.ArrayList;
import java.util.List;

import org.bson.Document;
import org.bson.conversions.Bson;

import com.mongodb.MongoClient;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;

public final class MongoDBUtil {

    private MongoDBUtil(){};
    
    private static final MongoDatabase database;
    
    static{
        
        MongoClient client = new MongoClient("127.0.0.1", 27017);
        
        database = client.getDatabase("mytest");
        
    }
    
    /**
     * 插入数据
     * @param collectionName 集合名
     * @param document 要插入的文档
     */
    public static void insert(String collectionName,Document document){
        
        MongoCollection<Document> collection = database.getCollection(collectionName);
                
        collection.insertOne(document);
        
    }
    //取得某个集合的所有数据
    public static List<Document> getAllDocument(String collectionName){
        
        MongoCollection<Document> docList = database.getCollection(collectionName);
        
        FindIterable<Document> findIterable = docList.find();
        
        MongoCursor<Document> docIt = findIterable.iterator();
        
        List<Document> result = new ArrayList<Document>();
        
        while(docIt.hasNext()){
            
            result.add(docIt.next());
        }
        
        return result;
    }
    
    /**
     * 更新数据
     * @param collectionName集合名
     * @param filter:指定更新哪条数据
     * @param update:指定更新的内容
     * 例如:collection.updateMany(Filters.eq("name", "apple"), new Document("$set",new Document("name","orange")));  
     * 更新name为苹果的数据更新为桔子
     */
    public static void update(String collectionName,Bson filter, Bson update){
        
        MongoCollection<Document> collection = database.getCollection(collectionName);
        collection.updateMany(filter,update);
                
    }
    
    public static void delete(String collectionName,Bson filter){
        MongoCollection<Document> collection = database.getCollection(collectionName);
        collection.deleteMany(filter);
        
    }
    
}
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
P2P技术揭秘.P2P网络技术原理与典型系统开发
Modular.Java(2009.06)\.Craig.Walls.文字版.pdf:http://www.t00y.com/file/59501950(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.t00y.com%2Ffile%2F59501950)\More.E
Wesley13 Wesley13
3年前
MongoDB(二)
一、下载jar包http://central.maven.org/maven2/org/mongodb/mongojavadriver/二、代码实现1.packagecom.xbq.mongodb;2.importjava.uti
Wesley13 Wesley13
3年前
mongoDB 的介绍
一.常用的网站MongoDB  2009年被发布MongoDB的官网:www.mongodb.org(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.mongodb.org)   可以下载安装包   和 使用文档MongoDB国内官方网
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Wesley13 Wesley13
3年前
MongoDB下载、安装配置
1.安装包的下载官网路径:http://www.mongodb.org/(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.mongodb.org%2F)比较麻烦(要注册啥的)比较方便的方法:http://dl.mongodb.org/dl/win32/x86\_64(
Wesley13 Wesley13
3年前
MongoDB安装部署手册
下载MongoDB的二进制包"官方下载页面":http://www.mongodb.org/downloads(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.mongodb.org%2Fdownloads)部署到需要安装的机器节点为了
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这