

https://www.w3schools.com/mongodb/index.php
https://www.mongodb.com/try/download/community
community Server, MongoDB Shell(tools) msi로 설치

컨텐츠가 만들어지기 전까지 db가 안만들어짐


컬렉션도 값이 들어와야 만들어짐

붙여넣기는 ctrl+v가 안먹어서 마우스 우측 클릭을 하니까 작동을 하였다.




0, 1 전부 동일하게 작성, _id만 다르게 작성 가능



upsert 차이 확인


=> 모든 값에 likes가 1씩 증가함. 없는 애는 likes값이 1로 새로 생김



db가 drop이 되었어도 데이터 삽입 가능



select bookid, bookname from book where bookid=10

select * from book where price > 20000

1 오름차순, -1 내림차순

앞에 3개 제외하고

앞에 3개만

앞에 3개 뛰어넘고 4개만 출력




import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import dto.BookDto;
import org.bson.Document;
import org.bson.conversions.Bson;
import static com.mongodb.client.model.Filters.eq;
import static com.mongodb.client.model.Updates.combine;
import static com.mongodb.client.model.Updates.set;
public class Test {
private static final String CONNECTION_STRING = "mongodb://localhost:27017";
private static final String DATABASE_NAME = "madang";
private static final String COLLECTION_NAME = "book";
public static void main(String[] args) {
MongoClient mc = MongoClients.create(CONNECTION_STRING);
MongoDatabase database = mc.getDatabase(DATABASE_NAME);
MongoCollection<Document> collection = database.getCollection(COLLECTION_NAME);
// 목록
for(Document d : collection.find()){
BookDto bookDto = new BookDto();
bookDto.setBookId(d.getInteger("bookid"));
bookDto.setBookName(d.getString("bookname"));
bookDto.setPublisher(d.getString("publisher"));
bookDto.setPrice(d.getInteger("price"));
System.out.println(bookDto);
System.out.println(d);
}
// 상세
Document doc = collection.find(eq("bookid",1)).first();
System.out.println(doc);
// 등록
Document document = new Document("bookid", 11)
.append("bookname", "uplus")
.append("publisher","multiCampus")
.append("price",5000);
collection.insertOne(document);
// 수정
Bson filter = eq("bookid",11);
Bson update = combine(
set("bookname","uplus2"),
set("publisher","multiCampus2"),
set("price",10000)
);
collection.updateOne(filter,update);
// 삭제
collection.deleteOne(eq("bookid",11));
}
}