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/