티스토리 뷰

반응형

오랜만에 맥에 부트캠프를 설치하고 개발 환경을 새로 세팅하게 되었습니다.

그래서 새로운 마음 가짐으로 Eclipse에서 MongoDB 연동하고 테스트 해보겠습니다.

목차

1 MongoDB 설치하기
2. MongoDB 자바 드라이버 설치하기
3. Eclipse 에서 MongoDB 연동하기

 

MongoDB 설치

설치 링크 : https://www.mongodb.com/try/download/community

MongoDB 저장 장소를 변경하고 싶다면, 몽고 디비 설치 시에 Custom 옵션을 선택해주세요.

설치가 완료되었다면 환경변수 설정이 필요합니다. '시스템 속성 > 고급 > 환경 변수'에서 PATH에 '몽고디비설치패스/bin'을 추가해주세요. 환경변수 설정이 필수는 아니지만, 터미널에서 mongod 또는 mongo 명령어 실행 시 MongoDB 폴더까지 찾아가는 번거로움을 덜 수 있습니다.

> mongod
> mongo

터미널에서 위의 명령어 실행 시 *_NonExitstentPath: Data directory C:\\data\\db not found. *_에서가 발생하게 되는데요. DB 가 저장되어야 하는 위치인 C:\data\db에 폴더가 생성되어있지 않아서 에러가 발생하게 됩니다. 이를 해결하기 위한 2가지 방법이 있습니다. 2가지 중 편한 방법으로 세팅하면 됩니다. 전 1번.

 

1. C:\data\db에 폴더 생성하기

2. 터미널에서 아래 원하는 폴더 패스를 포함한 명령어 입력 ( 예 : C 드라이브의 mongodb 폴더에 저장하겠다)

mongod --dbpath=C:\mongodb

 

 

테스트해보기

> mongod

를 입력하면 27017 포트에서 로컬 mongodb 실행되는 것을 확인할 수 있습니다.

"ctx":"listener","msg":"Waiting for connections","attr":{"port":27017,"ssl":"off"}

이번엔 database 정보들을 확인해보겠습니다.

> mongo
MongoDB shell version v4.4.3
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
> show dbs // datase 리스트를 보여줌
admin   0.000GB
config  0.000GB
local   0.000GB
>
> use local // 해당 database 를 사용하겠다.
switched to db local
>

MongoDB 가 성공적으로 설치 완료되었습니다.

 

MongoDB Java 드라이버 설치

자바에서 몽고 디비 사용을 위해서는 외부 라이브러리 추가가 필요합니다. MongoDB 공식 홈페이지에서 라이브러리 버전을 확인하실 수 있습니다. 저는 주로 Maven Project를 사용하여 Maven Repository에서 필요한 라이브러리를 pom.xml에 추가를 해주는 식으로 사용하지만, 이번에는 파일을 직접 다운로드하여서 External Jar로 추가해보겠습니다. 저는 가장 최신 버전인 3.12.7 버전을 다운로드하였습니다.

Package Explorer > Properties > Java Build Path > Libraries > Add External JARs...로 다운로드한 MongoDB 드라이버를 추가해주세요.

 

Eclipse MongoDB 연동

첫째로, 연동을 위해서는 MongoDB 가 구동되는 ip와 포트가 필요합니다. 보통 로컬에서 테스트할 때에는 ip = 127.0.0.1 or localhost, port = 27017 이 되겠습니다.

MongoClient mongoClient = new MongoClient("localhost", 27017)

MongoDB 설치 후 기본 상태의 MongoDB Database 종류는 아래와 같습니다.

> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB

저는 연동 테스트를 위해 'local' DB를 사용하고 DB에 새로운 컬렉션을 추가해보도록 하겠습니다.

String TARGET_DB = "local";
String TARGET_COLLECTION = "books";

MongoClient mongoClient = new MongoClient("localhost", 27017); // local MOongoDB 서버와 연결
MongoDatabase db = mongoClient.getDatabase(TARGET_DB); //  TARGET_DB인 local  사용
db.createCollection(TARGET_COLLECTION); //  books collection 생성

쨘!!
books 컬렉션이 생성되었습니다.

다큐먼트 추가도 해볼까요?

String TARGET_DB = "local";
String TARGET_COLLECTION = "books";

MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase db = mongoClient.getDatabase(TARGET_DB);

db.createCollection(TARGET_COLLECTION);
MongoCollection<Document> books = db.getCollection(TARGET_COLLECTION);

Document doc = new Document();
doc.append("name", "MongoDB");
books.insertOne(doc);

그리고 MongoDB 를 확인하면?

성공적으로 Document 가 추가된 것을 확인할 수 있었습니다. 이렇게 기본 연동 테스트는 완료되었네요!!!

 

 

 

디리릿~~☆

반응형
반응형