본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


mongoDB8

[Springboot] Mongotemplate 에서 _class 제거 자바 기반의 몽고템플릿 라이브러리를 사용하면 데이터를 저장하거나 수정 할 때 "_class" 필드 항목이 저장하는 클래스 패키지명과 함께 항상 생기고는 합니다. 아래 사진처럼 패키지명과 클래스 이름이 그대로 저장되어 깨림찍 하지 않을 수 없습니다. 몽고템플릿에서는 데이터를 매핑 할 때 주어진 클래스 의 패키지와 이름을 넣도록 기본설정이 되어 있습니다. 해당 기능을 끄기 위해서는 application.properties 에서는 할 수 없으며, 따로 빈 객체를 생성해야 합니다. 위 내용에 해당되는 코드 입니다. * 몽고컨피그.class import org.springframework.beans.factory.BeanFactory; import org.springframework.context.annotati.. 2023. 4. 25.
Nestjs 프레임워크 서버(Mongodb, database) -14 비관계형 데이터베이스 중 몽고DB는 제가 비관계형 데이터베이스에서 가장 좋아하는(?) 데이터 베이스 입니다. 무료에다 성능 또한 훌륭하기 때문 입니다! 얼마전 데이터베이스 인기순위에서도 1등(비관계 중)을 한 것을 볼 수 있었습니다. * 기준 : 2022.09 Nestjs에서 Mongodb를 사용하기 위해서는 역시나 모듈을 설치해야 합니다. Express 프레임워크에서부터 널리 사용 하는 몽구스(mongoose)를 설치 해 줍니다. npm install @nestjs/mongoose mongoose #1. 도큐먼트(모델, 스키마) 생성 도큐먼트란 데이터를 매핑하기 위한 ORM의 첫번째 단계 입니다. 시퀄라이즈에서의 모델을 만들어 준 것 처럼 동일한 방식으로 클래스를 만들어야 합니다. 특히 몽고db같은 경.. 2022. 9. 16.
Mongodb Aggregate 밀리세컨드(milliseconds) 변환(날짜, 문자형식) with Mongotemplate 몽고DB에 저장되어 있는 밀리세컨드(millisecond)값을 집계함수(aggregate)를 통해서 변환하는 방법 입니다. * 기본적으로 몽고DB와 연동하는 라이브러리는 너무 낮지 않아야 합니다. : ) 먼저 파싱 할 데이터를 살펴보겠습니다. val이라는 키에 밀리세컨드값이 들어가 있습니다. 해당 값을 바꾸기 위해서 ConvertOperators 클래스를 활용하여 데이터를 변환하여 줍니다. { ToDate td = ConvertOperators.valueOf("val").convertToDate(); //ToDate라는 클래스가 반환 됩니다. } convertToDate메소드를 사용하면 ToDate라는 클래스 값을 받을 수 있습니다. ToDate라는 클래스는 AbstractAggregationExpres.. 2021. 7. 7.
몽고db 특징 간단 정리 (버전은 3.x.x 이하) 1. 데이터를 모델화 하여 관리 - DB -Database는 Collection들의 물리적인 컨테이너. 각 Database는 파일시스템에 여러파일들로 저장. 2. MongoDB 는 이러한 스키마가 사전에 정의되지 않아도 된다 (Schemaless) - 데이터베이스에 저장된 Document는 각기 다른, 다양한 필드를 저장 할 수 있다. - 각 필드는 서로 다른 데이터타입을 가질 수 있다. 3. 하나의 row에 하나의 Document를 저장한다. 4. 다른 No-sql과 달리 강력한 쿼리 기능을 지원한다. 5. RDBMS인 MySQL에서 지원하는 대부분의 인덱스를 지원한다. 6. Collection의 사이즈를 고정할 수 있으며 , 큐 처럼 동작한다. 7. 컬렉션과의 Join 불가능하다. Join을 사용하고.. 2019. 7. 31.
몽고db 백업, 복원하기 1. 몽고 백업 명령어 mongodump --host 127.0.0.1:포트번호 2. 몽고 복원 명령어 mongorestore -h 127.0.0.1:포트번호 --username 이름 --password 비밀번호 --db 대상 덤프파일 위치 3. 포트번호가 틀리거나 사용자 권한이 없는 경우 만나는 오류 1. error reading database: not authorized on admin to execute command 2. Don't know what to do with the dump file 4. 사용자 권한 변경 db.updateUser( "사용자아이디", { roles : [ { role : "restore", db : "대상" }, { role : "backup", db : "대상" },.. 2019. 7. 1.
MongoTemplate Aggregate Mongotemplate를 활용해서 집계함수를 실행하는 방법이다. 아래와 같은 데이터가 있다고 하자. { "_id":ObjectId("507f1f77bcf86cd799439011"), //고유 아이디 "date" : ISODate("2019-06-21 10:03:46.000Z"), //날짜 데이터 "text":"test", //단순 텍스트 "number":1234, //숫자 "type1":"A", //그룹핑할 데이터1 "type2":"AA" //그룹핑할 데이터2 }, { "_id":ObjectId("54af1e77gcfq6qdr22u39914"), "date" : ISODate("2019-06-21 10:03:46.000Z"), "text":"text text..", "number":1234, "type.. 2019. 6. 21.