MongoDB implement java connected (simple encapsulation)

  To complete the registration recently landed a feature, plus just learned MongoDB, I wanted to try a lot of blog search, can not find a complete use case, only you toss down. Here we need to load a jar package, I use the mongo-java-driver-3.8.0.jar, mainly related components used in the client.

 
package com.amyyang.mongodb;

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

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

public class MongodbHelper {
	/* establish connection*/
	public static MongoDatabase setConnection() {
		try {
			// connection MongoDB service
			@SuppressWarnings("resource")
			MongoClient mongoClient=new MongoClient("localhost",27017);
			// connect to the database
			MongoDatabase mongoDatabase=mongoClient.getDatabase("test");
			System.out.println("successfully connecting"+mongoClient);
			return mongoDatabase;
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace ();
		}
		return null;
	}
	/ * Default collection * /
	public static String userinfoCollection() {
		return "info";
	}
	@SuppressWarnings({ })
	/ * Find JSON * /
	public static boolean checkinfo(String user,String password) {
		boolean result=false;
		if(setConnection()!=null) {
			MongoDatabase mongoDatabase=setConnection();
			MongoCollection<Document> collection=mongoDatabase.getCollection(userinfoCollection());
			// "userid", "userpassword" is the field name in my info collection
			Bson filter=Filters.eq("userid",user);
			FindIterable <Document> = findIterable collection.find (filter);
			MongoCursor <Document> = findIterable.iterator runner ();
			while(cursor.hasNext()) {
				Bson refilter=Filters.eq("userpasswd",password);
				FindIterable<Document> refindIterable=collection.find(refilter);
				MongoCursor<Document> recursor=refindIterable.iterator();
				while(recursor.hasNext()) {
					System.out.println(recursor.next());
					result=true;
					return true;
				}
			}
		}else {
			// connection failed MongeDB
			System.out.println("Connection failure");
			return false;
		}
		return result;
	}
	/ * Insert JSON * /
	public static boolean insertinfo(String user,String password) {
		if(setConnection()!=null) {
			MongoDatabase mongoDatabase=setConnection();
			// System.out.println(mongoDatabase);
			MongoCollection<Document> collection=mongoDatabase.getCollection(userinfoCollection());
			// System.out.println(userinfoCollection());
			Document document=new Document("userid",user).append("userpasswd", password);
			collection.insertOne(document);
			return true;
		}else {
			// connection failed MongeDB
			System.out.println("Connection failure");
			return false;
		}	
	}
	/ * Update JSON * /
	public static boolean updateinfo(String user,String newpasswd) {
		if(setConnection()!=null) {
			MongoDatabase mongoDatabase=setConnection();
			MongoCollection<Document> collection=mongoDatabase.getCollection(userinfoCollection());
			Bson filter=Filters.eq("userid",user);
			Document document=new Document("$set",new Document("userpasswd",newpasswd));
			collection.updateOne(filter, document);
			return true;
		}else {
			// connection failed MongeDB
			System.out.println("Connection failure");
			return false;
		}
	}
	// simple test
	public static void main(String[] args) {
		setConnection();
		boolean rs1=checkinfo("admin", "passwd1");
		System.out.print(rs1);
		boolean rs2=insertinfo("newadmin", "newpasswd");
		System.out.print(rs2);
		boolean rs3=updateinfo("admin", "passwd");
		System.out.print(rs3);
	}
}
 

  

 

  With this simple operation mongodb I of the package, to facilitate subsequent requests authentication servlet. 2020 is about to come, I wish you all a Happy New Year and good luck!

Guess you like

Origin www.cnblogs.com/SHNLQS-1273196803/p/12200784.html