Spring Boot MongoDB通过引用一对多或多对多的关系

时间:2019-11-22 12:18:56

标签: mongodb spring-boot nosql

我是NoSQL世界的新手,几天前开始使用MongoDB入门项目开发新项目。我正在努力了解关系在NoSQL中如何真正发挥作用。

  

例如,我有一个国家/地区->地区->城市->地区

     

首先,为此,我使用@DBRef将对“许多”对象的引用保存在“一个”对象中。我的问题是如何从子对象获取父对象。我可以参考一下吗?所以我在国家对象中保存了country_id,这是正确的实现吗?

@Document("country")
class Country (

        @Id
        var id: String? = null,

        var active: Boolean = true,

        var name: TextValue? = null,


        @DBRef
        var regions: MutableList<Region> = mutableListOf(),

        var priority: Long? = 0,
        var countryCode: String? = null,
        var phoneCode: Long? = null
){
        constructor(id: String) : this() {
                this.id = id
        }


        constructor(id: String, isActive: Boolean): this(){
                this.id = id
                this.active = isActive
        }

}


@Document("region")
class Region(
        @Id
        var id: String? = null,

        var active: Boolean = true,

        var name: TextValue? = null,


        var country_id: String? = null,

        @DBRef
        var cities: MutableList<City> = mutableListOf(),


        var priority: Long? = 0

){
        constructor(id: String): this(){
                this.id = id
        }
}
  

第二,如果我想更新区域及其country_id,该怎么办?这意味着我正在将地区的关系从一个父母变成另一个父母。

0 个答案:

没有答案