MongoDB는 오늘날 매우 인기 있는 NoSQL 데이터베이스입니다. 이 글에서는 MongoDB의 Java 드라이버를 사용하여 MongoDB를 운영하는 방법을 소개합니다.
MongoDB를 운영해야 하는 Java 프로젝트가 Maven 프로젝트인 경우 다음 구성을 추가하면 됩니다. 종속성.
<dependencies> <dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> <version>2.13.2</version> </dependency> </dependencies>
또는 jar 패키지(다운로드 주소: mongo-java-driver-2.13.2.jar)를 직접 다운로드하여 사용하세요.
MongoDB jar 패키지 도입 방법에 대한 자세한 내용은 공식 문서를 참고하세요.
MongoClient
을 사용하여 MongoDB에 연결할 수 있습니다. MongoClient
MongoClient mongoClient = new MongoClient("localhost", 27017); DB db = mongoClient.getDB("mydb");
은 스레드MongoClient
안전하고 다중 프로세스 환경에서 동일한 을 공유할 수 있다는 점을 지적해야 합니다. 일반적으로 애플리케이션에서는 전역 MongoClient
인스턴스를 생성한 다음 프로그램의 다른 위치에서 이 인스턴스를 사용하기만 하면 됩니다. MongoClient
클래스의 MongoCredential
메서드는 사용되는 인증 사용자 이름, 비밀번호 및 데이터베이스를 지정하고 createCredential
<🎜을 반환할 수 있습니다. > 객체MongoCredential
. 해당 메서드 선언은 다음과 같습니다. static MongoCredential createCredential(String userName, String database, char[] password)
MongoCredential credential = MongoCredential.createCredential("user", "mydb", "password".toCharArray();
는 사용자 이름이 user, 비밀번호가 비밀번호, 데이터베이스가 mydb인
개체를 생성합니다.MongoCredential
은
함수의 MongoCredential
매개변수로 MongoClient
객체를 생성합니다. 생성자 MongoClient
는 <a href="http://www.php.cn/wiki/1059.html" target="_blank">List<a href="http://www.php.cn/wiki/77.html" target="_blank">< ;
유형이므로 먼저 목록으로 구성한 다음 전달해야 합니다. 전체 인증 예시는 다음과 같습니다.
MongoCredential credential = MongoCredential.createCredential("user", "mydb", "password".toCharArray()); ServerAddress serverAddress = new ServerAddress("localhost", 27017); MongoClient mongoClient = new MongoClient(serverAddress, Arrays.asList(credential)); DB db = mongoClient.getDB("mydb");
<a href="http://www.php.cn/wiki/1059.html" target="_blank">List</a><MongoCredential>
2. 방법 2: MongoClientURI를 사용하여 URI 개체를 나타내는 MongoDB 인증을 완료할 수도 있습니다. 의 생성자는 String 유형의 MongoClientURI
문자열 MongoClientURI
을 허용합니다. 이 문자열의 형식은 다음과 같습니다. mongodb://[username:password@]host1[:port1][,host2[:port2],…[,hostN[:portN]]][/[database][?options]]
String sURI = String.format("mongodb://%s:%s@%s:%d/%s", "user", "password", "localhost", 27017, "mydb"); MongoClientURI uri = new MongoClientURI(sURI); MongoClient mongoClient = new MongoClient(uri); DB db = mongoClient.getDB("mydb");
MongoClientURI
4. MongoClient
DBCollection coll = db.getCollection("mycol");
{ “name”: “mongo”, “info”: { “ver”: “3.0” } }
BasicDB</a>Object</p>
를 사용하여 문서를 구성하면 됩니다. BasicDBObject doc = new BasicDBObject("name", "mongo").append("info", new BasicDBObject("ver", "3.0")); coll.insert(doc);
BasicDB<a href="http://www.php.cn/wiki/60.html" target="_blank">Object</a>
6. 문서 찾기 DBObject myDoc = coll.findOne(); System.out.println(myDoc);
findOne
명령을 실행하면 mycol 컬렉션의 첫 번째 문서가 출력됩니다. 의 검색 매개변수를 지정하여 검색 조건에 맞는 문서를 검색할 수도 있습니다. findOne
2. find를 통해 조건에 맞는 모든 문서 찾기
객체. 검색 기준과 일치하는 모든 문서. find
그림 및 테스트를 위해 먼저 DBCursor
{ “i”: value }
for (int i=0; i < 100; i++) { coll.insert(new BasicDBObject("i", i)); }
DBCursor
는 다음과 같습니다. find
DBCursor cursor = coll.find(); try { while(cursor.hasNext()) { System.out.println(cursor.next()); } } finally { cursor.close(); }
BasicDBObject query = new BasicDBObject("i", 71); DBCursor cursor = coll.find(query); try { while(cursor.hasNext()) { System.out.println(cursor.next()); } } finally { cursor.close(); }
연산자
가 포함된 경우 예를 들어 다음 mongo 쉘 명령:db.coll.find({i: {$gte: 50}});
// find all where i >= 50 BasicDBObject query = new BasicDBObject("i", new BasicDBObject("$gte", 50)); DBCursor cursor = coll.find(query); try { while (cursor.hasNext()) { System.out.println(cursor.next()); } } finally { cursor.close(); }
를 생성할 수 있습니다. 7. DBObject
BasicDBObject query = new BasicDBObject("i", 70); BasicDBObject up = new BasicDBObject("$set", new BasicDBObject("i", 100)); coll.update(query, up);
与我们常用的更新文档的mongo语句一样,DBCollection
还包含了save
,findAndModify
等更新文档的方法,其使用方法在此不再赘述,可以参考API说明文档即可。
可以通过生成一个DBObject
对象来删除指定的文档,例如:
BasicDBObject query = new BasicDBObject("i", 71); coll.remove(query);
上面的语句删除i为71的文档。
위 내용은 Java에서의 MongoDB 사용 가이드 코드 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!