我正在一个Grail的项目中,该项目的某些Domain对象未持久存储在数据库中。它们是通过REST API进行管理的,因此所有CRUD操作都将使用此API而不是数据库来完成。
关键是仍然能够使用一些有趣的Grails插件(例如使用Compass进行搜索)。
例如,将通过REST API管理域对象Users的管理,因此,在显示“用户”列表时,将在远程服务器上调用用于检索用户列表的REST方法。我希望这个用例足够清楚:)
我可以考虑几种设计方法,但不确定最好的方法是什么:
以前的用户存储在内存中)?
我认为是映射),但是我不确定这是否是最好的方法还是
在何处加载数据。
提前致谢!
最佳答案
我将REST交互包装在服务中,然后从 Controller 调用服务。在这种情况下,服务将获取响应并创建其对象,然后将列表传递回 Controller 。 Controller 应该只处理传入的请求,调用应用程序组件并返回响应。
似乎您希望模型代表另一个应用程序中的数据,这是一个好主意。由于不需要GORM,因此可能需要在应用程序的“groovy”文件夹中而不是在domain models文件夹中定义它们。然后我认为它们将只是对象。
关于memory - 在Grails中使用内存域对象的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6746070/