簡體   English   中英

將 Morphia 升級到 2.0.0 的問題

[英]Issue upgrading Morphia to 2.0.0

我正在將 Morphia 升級到版本 2.0.0(當前為 1.3.2)並且我在刪除此代碼段的已棄用的 createQuery 方法時遇到問題,因為我需要進行元素匹配

val builder = BasicDBObjectBuilder.start()
        .add("items", BasicDBObject("\$elemMatch", BasicDBObject("\$and", arrayOf(
                BasicDBObject("shipments.correlations.id", pickupId),
                BasicDBObject("status.value", BasicDBObject("\$in", ItemStatus.values().filter {
                    it.value != ItemStatus.SHIPPED.value
                }.map { it.value }))
        ))))
if (excludeOrdersIds.count() > 0) {
    builder.add("id", BasicDBObject("\$nin", excludeOrdersIds))
}
return morphia.createQuery(Order::class.java, builder.get()).asList(FindOptions().limit(limit))

在 2.0.0 版中,我找不到讓我進行元素匹配或讓我使用 Mongo 驅動程序 BasicDBObjectBuilder 返回的 DBObject 的方法,就像我在此代碼片段中所做的那樣。

有小費嗎?

如果您升級每個中間版本並遵循棄用,到最后您會更干凈地到達那里。 2.0 版本放棄了對DBObject的所有使用,轉而使用現代的Document 但是你真的應該至少從 1.6 版本中恢復過來,因為那里有一些棄用可以讓你為遷移到 2.0 做好准備。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM