在由Eric Evans(http://dddcommunity.org/examples)編寫的示例DDD項目中,有一個Cargo類是一個實體對象,並使用hibernate映射到db表。該貨運域對象由幾個值對象組成,其中之一是Delivery。這個交付價值對象相當複雜,因爲它有10個字段。儘管如此,交付是一個扁平的對象,因此它完美地呈現在與貨物相同的表中的數據庫中。DDD並使用休眠存儲複雜值對象
我在我的應用程序中按照埃文斯的例子,但我到了一些困難,希望你能幫助我。
我有一個InvoiceDefinition實體對象,它是一個聚合根。除此之外,它還有一個InvoiceLine類型的字段,它是一個值對象。 InvoiceLine不能與InvoiceDefinition隔離存在。訣竅是InvoiceLine可以是具有子InvoiceLine值列表的葉或樹節點。所以它形成一個遞歸結構。
這是否可以作爲有效的值對象傳遞? 如何使用hibernate在db中存儲這樣一個值對象?