2013-04-16 137 views
3

我在試用MongoDB,我想知道從MongoDB到Java的數據映射的最佳方式是什麼。從Java訪問MongoDB

我使用的情況是,我試圖存儲100.000+文件(說電影+演員信息),我想要存儲的文本和圖像數據(小圖像,圍繞100KB-300KB)

  • 我試過Morphia,但它似乎已經死了。
  • Mormorph有一個分支,但我找不到任何經驗
  • 我可以手工做任何數據映射,但它看起來像很多工作,而且我害怕我會最後再次使用Morphia之類的東西來讓我更容易
  • 我現在也有MongoDB的Spring Data,但我還沒有檢查過它。

前進的最佳方法是什麼?我有以下問題:

  • 我應該選擇一個ORM嗎,還是我應該自己做映射?電影似乎是相當結構化的,所以我不明白爲什麼不使用ORM。
  • 如果我選擇ORM,選擇Spring Data比Morphia有什麼好處(除此之外,在過去幾個月似乎沒有Morphia的發佈),還是有沒有我沒有想到的解決方案?
  • 並且有可能再次提出一個太寬泛的問題:在存儲/檢索數據時,我還需要考慮其他任何事情嗎?例如,我應該爲Movie製作一個集合,爲Actor製作一個集合,考慮到我想要同時搜索?或者我應該將演員和電影關係合併成一個文檔?

回答

2

嘗試SpringData MongoDB - 這是迄今爲止將POJO映射到文檔的最簡單方法。你能給我一些關於你的設置(IDE,構建工具等)的信息,我可以給你一個例子嗎?

我剛剛扔了一個簡單的例子,併發布它here on GitHub。看看

+0

嗨大衛,感謝您的答覆。我正在使用MacOS,IntelliJ,Gradle和最新的MongoDB。 –

+0

@ErikPragt我對IntelliJ和Gradle沒有太多經驗,但我只是發佈了一個使用Maven構建的簡單演示。你應該可以將它導入到IntelliJ中,看看它是如何工作的 –

+0

哇,太棒了,謝謝!如果我可以接受你的答案兩次,我會這樣做! –