[英]In a java developed REST based app java architecture, should I split an implementation for requests/validations and one for domain?
過去,我有一個Bike
的域模型,因此我將創建一個名為Bike
的接口,並且在過去,我將創建該接口的實現。 在該實現中,我將執行驗證,JSON規則,數據庫映射注釋等。這似乎使系統難看而脆弱。 要映射,顯示和變換的旋轉非常多。
我想知道(作為實驗)我是否應該創建一個僅接受輸入並驗證數據的實現,並從中創建模型的實例,以便在進行一些轉換后在代碼內部更深入地使用。 所以:
(Type)Bike -> BikeWeb, BikeModel
但是,當我這樣做時,似乎我失去了JSON轉換的全部要點,並增加了接口地獄的復雜性。 因為我看到的是
(Type)Bike -> (Types) BikeWeb, BikeModel -> BikeWebImpl, BikeModelImpl
...時代1000
我要問的是我正在描述的一種設計模式,這種模式是關於如何走的路,應該使用的實際模式,還是我不滿意的一些辯論。
似乎Java世界中的每個REST解決方案都對我來說有這個難題,所以也許應該使用其他解決方案,我也很樂意。
老實說,我不知道為什么需要接口以及模型的實現。 您為什么不只使用Bike
類來表示模型?
似乎您正在尋找的是DTO模式。 DTO對象表示通過請求或響應發送的有效負載實例。 可以使用JSON語法和某些值來驗證此類對象-我的意思是,可以將某些字段設置為保持0到10之間的值。可以在此級別上進行此類驗證。 第二種對象是模型本身。 這樣,只有BikeDTO
和Bike
兩個類。 請看一下這篇文章 。 這可能會引起您的疑惑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.