java应用MongoDB简单操作

来源:互联网 发布:tcl网络电视如何看直播 编辑:程序博客网 时间:2024/05/21 07:56
/** * @Author: Administrator * @Date: 10:25 2017/10/16 * @Description: java链接mongodb数据库 */public class MongodbJdbc {    public static void main(String[] args){        try {            //连接mongodb服务,如果是远程连接替换"localhost"为服务器的IP的地址            //ServerAddress()两个参数分别为:1.服务器的地址 2.端口号          ServerAddress serverAddress = new ServerAddress("localhost", 27017);           //为了通过认证连接数据库            ArrayList<ServerAddress> addresses = new ArrayList<ServerAddress>();            addresses.add(serverAddress);            //MongoCredential.createScramSha1Credential()三个参数分别为 1.用户名 1.数据库名称 3.密码            MongoCredential credential = MongoCredential.createScramSha1Credential("MongoDB", "chen", "".toCharArray());            //为了通过认证连接数据库            ArrayList<MongoCredential> credentials = new ArrayList<MongoCredential>();            credentials.add(credential);            //通过连接认证获取MongoDB连接,参数是上边创建的集合            MongoClient mongoClient1 = new MongoClient(addresses, credentials);            //没有通过认证的链接            MongoClient mongoClient = new MongoClient("localhost", 27017);            //连接到数据库            MongoDatabase database = mongoClient.getDatabase("chen");            System.out.println("连接数据库 MongoDB 成功");            //创建集合 我们可以使用com.mongodb.client.MongoDatabase类中的createCollection()来创建集合.参数是集合的名称            database.createCollection("mongodb_test");            System.out.printf("创建结合成功");            //获取集合            MongoCollection<Document> colle = database.getCollection("mongodb_test");            System.out.printf("colle=="+colle);            //插入文档            /**             * 1.创建文档 org.bson.Document 参数key-value的格式             * 2.创建文档集合List<Document>             * 3.将文档集合插入数据库集合中 mongoCollection.insertMany(List<Document>) 插入单个文档可以用 mongoCollection.insertOne(Document)             */            Document document = new Document("title", "MongoDB");            document.append("description", "database");            document.append("likes", 100);            document.append("by", "Fly");            ArrayList<Document> list = new ArrayList<Document>();            list.add(document);            colle.insertMany(list);            //查看所有文档            /**             * 1.获取迭代器FindIterable<Document>             * 2.获取游标MongoCursor<Document>             * 3.通过用表遍历检索出的文档集合             */            FindIterable<Document> findIterable = colle.find();            MongoCursor<Document> iterator = findIterable.iterator();            while (iterator.hasNext()){               // Document next = iterator.next();                System.out.println(iterator.next());                System.out.printf("666666");            }            //更新文档            colle.updateMany(Filters.eq("likes",100), new Document("$set",new Document("likes", 200)));            FindIterable<Document> findIterable1 = colle.find();            MongoCursor<Document> iterator1 = findIterable.iterator();            while(iterator1.hasNext()){                System.out.println(iterator.next());            }        }catch(Exception e){            System.err.println( e.getClass().getName() + ": " + e.getMessage() );        }    }