DTO和DAO概念以及MVC


  1. 我们为什么要使用DTO和DAO,以及何时应该使用它们。我正在开发一个GUI Java软件来插入、编辑、删除数据。但我很难区分DTO/DAO和模型、视图、控制器(MVC(结构?它们是否相似,在通过Java GUI与数据库交互时更好地使用。

  2. 我真正好奇的一件事是,在一个类中包含View和Controller是否是一种好的做法。如果我们考虑NetBeans,您可以创建GUI Frame类并将JButton之类的组件添加到框架上,双击按钮将转到actionListener方法(Controller(,该方法似乎位于要向用户显示数据的框架中(View(。所以他们在同一个班。这是否完全违背了这个概念?

以下是我所说的

将视图和控制器放在一个类中是不是不好的做法?

DTO数据传输对象的缩写,因此它用于在应用程序的类和模块之间传输数据。

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

DAO数据访问对象的缩写,因此它应该封装用于在数据存储(数据库、文件系统等(中检索、保存和更新数据的逻辑。

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

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

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

至于第二个问题,如果你有一个小的应用程序,这是完全可以的,但是,如果你想遵循MVC模式,那么最好有一个单独的控制器,它将在一个独立的类中包含框架的业务逻辑,并从事件处理程序向该控制器调度消息
这将使您的业务逻辑与视图分离。

相关内容

  • 没有找到相关文章

最新更新