package com.example.db;
import com.example.vo.Board;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.result.InsertOneResult;
import org.bson.Document;
public class BoardDBImpl {
private MongoCollection<Document> collection = null;
public BoardDBImpl() {
String url = "mongodb://id210:pw210@1.234.5.158:37017/db210";
// 1. 접속하기. static. 접속은 객체를 n개 생성 불가
MongoClient client = MongoClients.create(url);
// 2. db연결
MongoDatabase db = client.getDatabase("db210");
// 3. 컬렉션 선택(board2)
this.collection = db.getCollection("board2");
}
public int insertData(Board board) {
try {
Document doc = new Document();
doc.append("_id", board.getNo());
doc.append("title", board.getTitle());
doc.append("content", board.getContent());
doc.append("writer", board.getWriter());
doc.append("hit", board.getHit());
InsertOneResult result = this.collection.insertOne(doc);
System.out.println(result);
if (result.getInsertedId()
.asInt64() // long은 asInt64, int는 asInt32, 문자는 asString
.getValue() == board.getNo()) {
return 1;
}
return 0;
} catch (Exception e) {
e.printStackTrace();
return -1;
}
}
}