gpt4 book ai didi

grails - Java中的Grails项目DTO

转载 作者:行者123 更新时间:2023-12-02 14:34:39 24 4
gpt4 key购买 nike

在Grails中,有一个插件编译器“:dto:0.2.4”可以将Domain对象传输到DTO。使用该插件时,DTO被创建为Java类。

例如,如果存在诸如Person.groovy之类的域类,那么将创建类似于PersonDTO.java的DTO。

这种行为的意图是什么?任何意见,将不胜感激。

最佳答案

彼得·莱德布鲁克(Peter Ledbrook)用this blog post回答您的问题。

Despite that, DTOs still persist (pardon the pun). When you want to serialise data over RPC, they’re often one of the few options available to you. GWT-RPC is a case in point, and the reason for the Grails DTO plugin. Gilead allows you to transparently serialise Hibernate domain instances, but this only works if the domain class can be loaded by the client. Since GORM domain classes are typically Groovy, that’s not an option with GWT. Your typical Grails domain class also includes a bunch of stuff that the client is hardly going to be interested in, like the custom mappings.



因此,基本上,它可以是域类的轻量级版本,仅包含客户端需要的数据。

对于具有数据库查询静态方法的Grails而言,情况并非如此,但是如果您有 DAO类,则可以使用DTO模式来确保不允许您的客户端执行涉及数据库的方法。可以确保在表示层中不当使用此对象。

关于grails - Java中的Grails项目DTO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16477622/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com