java简单使用MongoDB实例 - Go语言中文社区

java简单使用MongoDB实例


1.导包

<dependency>
		<groupId>org.mongodb</groupId>
		<artifactId>mongo-java-driver</artifactId>
		<version>3.2.2</version>
	</dependency>

2.连接

public static void main(String[] args) {		
		try{   
		       // 连接到 mongodb 服务
		       MongoClient mongoClient = new MongoClient( "192.168.88.134" , 27017 );
		     
		       // 连接到数据库
		       MongoDatabase mongoDatabase = mongoClient.getDatabase("mycol");  
		       System.out.println("Connect to database successfully");

		     }catch(Exception e)
		     {
		        System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		     }
	}

  

 

3.如果有密码

public static void main(String[] args){  
        try {  
            //连接到MongoDB服务 如果是远程连接可以替换“localhost”为服务器所在IP地址  
            //ServerAddress()两个参数分别为 服务器地址 和 端口  
            ServerAddress serverAddress = new ServerAddress("localhost",27017);  
            List<ServerAddress> addrs = new ArrayList<ServerAddress>();  
            addrs.add(serverAddress);  
              
            //MongoCredential.createScramSha1Credential()三个参数分别为 用户名 数据库名称 密码  
            MongoCredential credential = MongoCredential.createScramSha1Credential("username", "databaseName", "password".toCharArray());  
            List<MongoCredential> credentials = new ArrayList<MongoCredential>();  
            credentials.add(credential);  
              
            //通过连接认证获取MongoDB连接  
            MongoClient mongoClient = new MongoClient(addrs,credentials);  
              
            //连接到数据库  
            MongoDatabase mongoDatabase = mongoClient.getDatabase("databaseName");  
            System.out.println("Connect to database successfully");  
        } catch (Exception e) {  
            System.err.println( e.getClass().getName() + ": " + e.getMessage() );  
        }  
    }  

  4.。连接到数据库之后,下面就来连接表

public static void main(String[] args) {		
		try{   
		       // 连接到 mongodb 服务
		       MongoClient mongoClient = new MongoClient( "192.168.88.134" , 27017 );
		     
		       // 连接到数据库
		       MongoDatabase mongoDatabase = mongoClient.getDatabase("guilf1");  
		       System.out.println("Connect to database successfully");
		       
		       // 相当于书记库里面的表,创建
//		       mongoDatabase.createCollection("test");
//		       System.out.println("集合创建成功");
		       
		       // 创建之后连接表,然后才能进行数据操作
		       MongoCollection<Document> collection = mongoDatabase.getCollection("test");
		       System.out.println("集合 test 选择成功"+collection);
		       

		     }catch(Exception e)
		     {
		        System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		     }
	}

  5. ,所有的操作

package com.guilf.service.impl;



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

import org.bson.Document;

import com.mongodb.MongoClient;
import com.mongodb.client.FindIterable;
import com.mongodb.client.ListCollectionsIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.model.Filters;


public class MongoDBMain {

	public static void main(String[] args) {		
		try{   
		       // 连接到 mongodb 服务
		       MongoClient mongoClient = new MongoClient( "192.168.88.134" , 27017 );
		     
		       // 连接到数据库
		       MongoDatabase mongoDatabase = mongoClient.getDatabase("guilf1");  
		       System.out.println("Connect to database successfully");
		       
		       // 相当于书记库里面的表,创建
//		       mongoDatabase.createCollection("test");
//		       System.out.println("集合创建成功");
		       
		       // 创建之后连接表,然后才能进行数据操作
		       MongoCollection<Document> collection = mongoDatabase.getCollection("test");
		       System.out.println("集合 test 选择成功"+collection);
		       
		       //document,就相当于插入数据库里面的一条一条数据
		       //插入文档  
		         /** 
		         * 1. 创建文档 org.bson.Document 参数为key-value的格式 
		         * 2. 创建文档集合List<Document> 
		         * 3. 将文档集合插入数据库集合中 mongoCollection.insertMany(List<Document>) 插入单个文档可以用 mongoCollection.insertOne(Document) 
		         * */
		         Document document = new Document("title", "MongoDB").  
		         append("description", "database").  
		         append("likes", 100).  
		         append("by", "Fly");  
		         Document document2 = new Document("title", "MongoDB").  
				         append("description", "database").  
				         append("ggg", 100).  
				         append("by", "Fly");  
		         List<Document> documents = new ArrayList<Document>();  
		         documents.add(document);
		         documents.add(document2);
		         collection.insertMany(documents);  
		         System.out.println("文档插入成功");  
		         
		         
		       //检索所有文档   ,上面插入了,这里查询所有的
		         /** 
		         * 1. 获取迭代器FindIterable<Document> 
		         * 2. 获取游标MongoCursor<Document> 
		         * 3. 通过游标遍历检索出的文档集合 
		         * */  
		         FindIterable<Document> findIterable = collection.find();  
		         MongoCursor<Document> mongoCursor = findIterable.iterator();  
		         while(mongoCursor.hasNext()){  
		            System.out.println(mongoCursor.next());  
		         }  
		         
		         
		         
		       //更新文档   将文档中likes=100的文档修改为likes=200   
		         collection.updateMany(Filters.eq("likes", 100), new Document("$set",new Document("likes",200)));  
		         //检索查看结果  
		         FindIterable<Document> findIterable1 = collection.find();  
		         MongoCursor<Document> mongoCursor1 = findIterable1.iterator();  
		         while(mongoCursor1.hasNext()){  
		            System.out.println(mongoCursor1.next());  
		         }  
		         
		         
		         
		       //删除符合条件的第一个文档  
		         collection.deleteOne(Filters.eq("likes", 200));  
		         //删除所有符合条件的文档  
		         collection.deleteMany (Filters.eq("likes", 200));  
		         //检索查看结果  
		         FindIterable<Document> findIterable2 = collection.find();  
		         MongoCursor<Document> mongoCursor2 = findIterable2.iterator();  
		         while(mongoCursor2.hasNext()){  
		           System.out.println(mongoCursor2.next());  
		         }  

		     }catch(Exception e)
		     {
		        System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		     }
	}
}

  

 

转载于:https://www.cnblogs.com/guilf/p/9341163.html

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/anrenxiao9916/article/details/102260283
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-06-30 10:30:50
  • 阅读 ( 1434 )
  • 分类:数据库

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢