본문 바로가기
Backend

06월 26일 금 | SW활용 10 - MongoDB 이클립스 연동하기

by 구라미 2019. 6. 28.

MongoDB 이클립스 연동하기

1. MongoDB는 JSON문법을 따른다.

 

JSON 문법 참고사이트

https://www.w3schools.com/js/js_json_intro.asp

http://tcpschool.com/json/intro

 

MongoDB Cheat Sheet

https://gist.github.com/aponxi/4380516

 

- SHOW DATABASES와 

- SHOW TABLES로 있

 

 

2. MongoDB로 컬렉션 만들기

 

> use mycustomers

db.createCollection('customers');

customers 라는 컬렉션이 생성되었다.

 

>db.customers.insert({first_name:"John", last_name:"Doe"});
>db.customers.find();
>db.customers.insert({first_name:"Steven", last_name:"Smith"},{first_name:"Joan", last_name:"Johnson",gender:"female"});
>db.customers.find();
>db.customers.find().pretty();

 

use mycustomers DB생성
db.createCollection('customers'); 테이블생성
show dbs DB목록
db 사용DB 확인
show collections 테이블목록

구조가 없기 때문에 칼럼이 다를 수 있다.

 

NoSQL이어도 Primary Key가 있어야한다.

 

 

 

 

3. MongoDB와 자바 연동하기

과제였는데 서치해서 코드를 짜려다보니 depreated된 클래스들이 많았다.

 

DB ->  MongoDatabase

DBCollection -> MongoCollection

DBCursor -> FindIterable과 MongoCursor로 사용

나는 짤 때 MongoCursor는 찾았는데 자꾸 안되서 보니까 둘다 사용한거였음.

 

package jdbcMongo;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;

public class Test01_DBOpen {
		

	public static void main(String[] args) {
			
			//MongoDB에 연결하기 위해 IP주소와 포트번호
			String MongoDB_IP = "localhost";
			int MongoDB_Port = 27017;
			MongoClient mongo = new MongoClient(MongoDB_IP, MongoDB_Port);
			System.out.println("접속성공");
			
			//DB연결하고 Collection 가져오기			
			MongoDatabase db = mongo.getDatabase("mycustomers");
			MongoCollection coll = db.getCollection("customers");
			System.out.println("접속성공");
			
		try{
			FindIterable<Document> iterate = coll.find();
	        MongoCursor<Document> cursor = iterate.iterator();
			
			while(cursor.hasNext()){
				Document document = cursor.next();
				String JsonResult = document.toJson();
		        System.out.println(JsonResult);
			}
			
		
		}catch(Exception e){
			System.out.println("DB 연결 실패!" + e);
		} finally {
			//cursor.close();
		}

	}//main end
}//class end

 

결과값:

잘 불러와졌다.

 

 

 

 

 

 

 

 

 

 

 

 

댓글