如何編寫基於Spring Jax-Rs Jersey,HATEOAS API和JerseyTest框架整合的Spring Boot微服務 -DZone Microservices

banq發表於2020-04-03

在本文中,我們討論如何編寫基於Spring Jax-Rs Jersey,HATEOAS API和JerseyTest框架整合的Spring Boot微服務。我們將採用上一篇文章Spring Boot-Microservice-Spring Data REST和HATEOAS Integration的材料,並將其重寫以用於新的Spring Jax-Rs Jersey用法。
這兩篇文章均基於Spring HATEOAS參考文件的作者之一Greg Turnquist編寫的示例專案。如果您已經熟悉此專案及其問題域,請隨時跳過其描述。否則,我們鼓勵您繼續閱讀。

問題:您希望實施訂單的概念。這些訂單具有某些狀態程式碼,這些狀態程式碼指示系統可以執行的轉換,例如,只有在付款後才能履行訂單,並且不能取消已履行的訂單。
解決方案:您必須對一組OrderStatus程式碼進行編碼,並使用自定義的Spring Web MVC控制器強制執行。該控制器應沿用Spring Data REST提供的路由。

點選標題見原文, GitHub 
(banq注:這種使用OrderStatus編碼的解決方案並不是一種DDD面向業務的解決方式,訂單狀態是影響全域性的重要事件和狀態,使用簡單數字編碼代表狀態,是一種過於抽象的方式,應採取狀態模式或EventSourcing等方式隆重應對,這裡只是REST技術舉例)
 

相關文章