• MongoDB和Java-PHP


    一、java操作mongoDB

    配置环境:

    1、下mongodb JDBC驱动mongo-java-driver-3.2.2.jar,并包含在classpath中

    步骤:

    1、连接数据库

    1 // 连接到 mongodb 服务
    2 MongoClient mongoClient = new MongoClient( "localhost" , 27017 );      
    3 // 连接到数据库
    4 MongoDatabase mongoDatabase =mongoClient.getDatabase("mycol");

    2、如果需要验证用户名和密码,则

     1 //连接到MongoDB服务 如果是远程连接可以替换“localhost”为服务器所在IP地址  
     2 //ServerAddress()两个参数分别为 服务器地址 和 端口  
     3 ServerAddress serverAddress = new ServerAddress("localhost",27017);  
     4 List<ServerAddress> addrs = new ArrayList<ServerAddress>();  
     5 addrs.add(serverAddress);                
     6 //MongoCredential.createScramSha1Credential()三个参数分别为 用户名 数据库名称 密码  
     7 MongoCredential credential =MongoCredential.createScramSha1Credential("username", "databaseName", "password".toCharArray());  
     8 List<MongoCredential> credentials = new ArrayList<MongoCredential>();  credentials.add(credential);  
     9 //通过连接认证获取MongoDB连接  
    10 MongoClient mongoClient = new MongoClient(addrs,credentials);  
    11 //连接到数据库  
    12 MongoDatabase mongoDatabase =mongoClient.getDatabase("databaseName"); 

    3、操作数据库

    创建集合

     mongoDatabase.createCollection("test");

    获取集合

     MongoCollection<Document> collection = mongoDatabase.getCollection("test");

    插入文档

    1 Document document = new Document("title", "MongoDB").  
    2 append("description", "database").  
    3 append("likes", 100).  
    4 append("by", "Fly");  
    5 List<Document> documents = new ArrayList<Document>();  
    6 documents.add(document);  
    7 collection.insertMany(documents); 

    获取文档

    1 FindIterable<Document> findIterable = collection.find();  //获取迭代器
    2 MongoCursor<Document> mongoCursor = findIterable.iterator();  //获取游标
    3 while(mongoCursor.hasNext()){  
    4        System.out.println(mongoCursor.next());  
    5 }  

    更新文档

    1 //更新文档   将文档中likes=100的文档修改为likes=200   
    2 collection.updateMany(Filters.eq("likes", 100), new Document("$set",new Document("likes",200)));  

    删除文档

    1 //删除符合条件的第一个文档  
    2 collection.deleteOne(Filters.eq("likes", 200));  
    3 //删除所有符合条件的文档  
    4 collection.deleteMany (Filters.eq("likes", 200));  
  • 相关阅读:
    遗弃.Forsaken.2015.BluRay.720p.x264.DTS-beAst
    三体
    Hexo博客maupassant主题添加Google Adsense广告
    拼凑自定义控件
    Redis 的安装和使用
    ES6中的数组
    机器学习 —— 数据预处理
    吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-file
    吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-home
    吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-trash
  • 原文地址:https://www.cnblogs.com/wangwanchao/p/5451228.html
Copyright © 2020-2023  润新知