gpt4 book ai didi

java - DTO 和 DAO 概念和 MVC

转载 作者:IT老高 更新时间:2023-10-28 11:21:29 26 4
gpt4 key购买 nike

1) 为什么要使用DTODAO,什么时候应该使用它们。我正在开发一个 GUI Java 软件来插入、编辑、删除数据。但我正在努力区分 DTO/DAOModelViewController (MVC) 结构?它们是否相似,在通过Java GUI与数据库交互时使用哪个更好。

2) 我真正好奇的一件事是,将 viewController 放在一个类中是否是一种好习惯。如果我们考虑 Netbeans,您可以创建 GUI Frame Class 并将 JButton 等组件添加到框架上,双击按钮将带您到actionListener 方法( Controller )似乎在框架中,数据将显示给用户( View )。所以他们在同一个类。那么这是否完全违背了这个概念?

Here就是我要说的

在一个类中拥有 View 和 Controller 是不好的做法?

最佳答案

DTOData Transfer Object 的缩写,所以它用于在应用程序的类和模块之间传输数据。

  • DTO 应该只包含数据、getter、setter 和构造函数的私有(private)字段。
  • DTO不建议在此类类中添加业务逻辑方法,但可以添加一些util方法。

DAOData Access Object 的缩写,因此它应该封装在数据存储(数据库、文件-系统,随便)。

以下是 DAO 和 DTO 接口(interface)的示例:

interface PersonDTO {
String getName();
void setName(String name);
//.....
}

interface PersonDAO {
PersonDTO findById(long id);
void save(PersonDTO person);
//.....
}

MVC 是一个更广泛的模式。 DTO/DAO 将成为 MVC 模式中的模型。
它告诉您如何组织整个应用程序,而不仅仅是负责数据检索的部分。

至于第二个问题,如果你有一个小应用程序完全可以,但是,如果你想遵循 MVC 模式,最好有一个单独的 Controller ,其中包含框架的业务逻辑在一个单独的类中,并将消息从事件处理程序发送到此 Controller 。
这会将您的业务逻辑与 View 分开。

关于java - DTO 和 DAO 概念和 MVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14366001/

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