MongoDB는 임의의 숫자와 유형의 키/값 쌍을 으로 쓸 수 있습니다.으로 문서를 작성할 수 있습니다. 내 문서가 실제로 스키마가없는이 기능을 사용한다고 가정하고 읽는 방법을 관리하려면 기본적으로 응용 프로그램 코드 (Java 사용)가 데이터베이스에서 읽기를 관리하는 방법을 설명합니다.MongoDB에서 Java를 사용하여 스키마가없는 문서를 읽는 방법
답변
java 드라이버는 Map<String, Object>
으로 구현되어 사용되는 BasicBSONObject으로 문서를 읽고 씁니다. 그런 다음 응용 프로그램 코드가이 맵을 읽고 적절한 유형으로 값을 캐스팅해야합니다.
Morphia 또는 Spring MongoDB과 같은 매핑 프레임 워크는 BSONObject를 클래스로 변환하거나 그 반대로 도울 수 있습니다.
직접 해보고 싶을 때 BasicBSONObject를 사용하는 Factory 메소드를 사용하고, 가지고있는 키와 값을 확인한 다음이 정보를 사용하여 적절한 클래스의 객체를 생성하고 반환합니다.
맞아요,하지만 내 진짜 문제는 6-8 모델을 다루는 것입니다 (morhpia와 같은 ODM을 사용하는 경우). 일반적으로 각 문서가 다르므로 올바른 모델 (.class)로 매핑해야합니다. 내 의심은 런타임에 결정을 내리는 방법입니다. 그것은 스위치/if-else-if 구조가되어야합니다. 대부분 코드를 작성하는 가장 좋은 방법은 아니며, 스마트 한 대안이 될 것입니다. – hershey92
실제 문제는 애플리케이션 코드에 있으며, 더 나은 코드를 모듈화해야합니다. – hershey92
수 있습니까? 질문을 편집하고 문서가 어떻게 달라질 수 있는지 예를 들려주십시오. –
- 1. Java를 사용하여 mongoDB에서 문서를 업데이트하십시오.
- 2. java를 사용하여 mongodb에서 문서를 얻는 방법보다 작거나 큰 값
- 3. Java를 사용하여 MongoDB에서 와일드 카드 검색을 수행하는 방법
- 4. 날짜로 문서를 MongoDB 3.3에서 검색하는 방법 Java를 사용하여
- 5. Java를 사용하여 MongoDB 3.3에서 _id로 문서를 삭제하는 방법
- 6. Java를 사용하여 XML 속성 값을 읽는 방법
- 7. Java를 사용하여 tableau 추출 파일을 읽는 방법?
- 8. java를 사용하여 Image에서 바코드를 읽는 방법?
- 9. Java를 사용하여 MQ에서 메시지를 읽는 방법
- 10. Windows에서 Java를 사용하여 CD 드라이브에서 읽는 방법
- 11. java를 사용하여 XML에서 대체 태그를 읽는 방법?
- 12. Java를 사용하여 쿠키 값을 설정하고 읽는 방법
- 13. java를 사용하여 키 공간 스키마를 읽는 방법?
- 14. 루비에서 문서를 읽는 방법?
- 15. Java를 사용하여 MongoDB에서 임베디드 문서 업데이트
- 16. Java를 사용하여 MongoDB에서 단일 내부 필드 찾기
- 17. Java를 사용하여 mongoDB에서 열린 연결 수를 얻으십시오.
- 18. webview를 사용하여 서버에서 PDF 문서를 읽는 방법?
- 19. phonegap을 사용하여 이미지 및 문서를 읽는 방법?
- 20. System.XML.Linq를 사용하여 간단한 XML 문서를 읽는 방법?
- 21. Java 드라이버가있는 MongoDB에서 문서를 업데이트하는 방법
- 22. 스키마가없는 몽구스
- 23. Java를 사용하여 mongodb 문서를 쿼리하는 중
- 24. mongodb에서 문서를 삭제하는 방법은 무엇입니까?
- 25. 최신 문서가있는 경우 Mongodb에서 문서를 제거하는 방법
- 26. mongodb에서 N 개의 문서를 삭제하는 방법
- 27. _id에 의해 Mongodb에서 문서를 찾는 방법 PHP에서
- 28. matlab에있는 단어 문서를 읽는 방법
- 29. URL에서 XML 문서를 읽는 방법
- 30. MongoDB에서 문서를 분리 할 때
Java 클라이언트를 사용하여 mongodb에 연결하는 방법을 알고 싶습니까? [get-started-with-java-driver] (http://docs.mongodb.org/ecosystem/tutorial/getting-started-with-java-driver) – roby
확실히 아닙니다. 다른 구조를 가지고있는 문서를 읽으려고하는데, 다른 구조에 의존하는 읽기를 하드 코딩하는 대신에. 나는 좀 더 효율적인 방법을 찾고있다. – hershey92
모든 NoSQL 데이터베이스가 스키마 및/또는 문서 지향 데이터베이스가 아닙니다. 귀하의 질문을 편집하고 "NoSQL"을 "MongoDB"로 대체했습니다. 이것이 의미하는 것 같기 때문입니다. – Philipp