Grails 和数据源的使用

标签 grails service controller datasource

friend 们:

在服务类中,我试图查询数据库并获取结果以填充我的域类。我不确定我的想法是否正确,或者我必须使用查找方法来填充我的域类?

我的理解是:
Grails 通过 URLMappings 将调用我的 Controller ,在其中我可以直接实例化 Service 类。

然后,我在服务类中直接使用 SQL 来遍历结果集并填充域类列表并将其返回给 Controller 类,然后 Controller 类会将列表返回给 REST 调用用户。

这是正确的方法还是我必须从 Controller 调用 Service 但使用 find 方法,这将填充列表并且应该用于返回列表?

在所有情况下,我都使用 H2 db 本身。

问候并感谢您的宝贵时间。
-奈良哈里

最佳答案

根据标准,Flow 来自 Controller > 服务 > DAO。

所有的业务逻辑都应该只写在服务类中。
当您使用 DAO 层时,通过 GORM 隐藏。
Grails 是非常强大和高效的语言。您使用 GORM 进行数据库事件。对于您的场景,您可以使用 findAll、createCriteria、HQL 或 native SQL 查询方法,但不应中断流程。这意味着如果在 Controller 中编写数据库相关代码,那么将来很难维护调试代码。

关于Grails 和数据源的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44212100/

相关文章:

intellij-idea - Google-analytics与grails 4.x应用的集成

java - 如何在Grails的脚手架 View 中显示ID列?

c# - NServiceBus批处理消息

android - 不允许绑定(bind)服务 Intent

ruby-on-rails - rails : controller helpers

java - 使用 SpringJUnit4ClassRunner 测试包含服务的 Controller 逻辑

grails - 模块化 Grails 应用程序 (Grails 2.3.x)

angular - 来自服务的同步 Angular 8 HTTP 请求

php - Laravel,页面刷新后显示数据库记录更新

grails - Grails 3.2.8升级:实现过滤器