java DTO和DAO概念以及MVC [已关闭]

piok6c0g  于 2023-05-05  发布在  Java
关注(0)|答案(1)|浏览(126)

就目前而言,这个问题并不适合我们的Q&A格式。我们希望答案能得到事实、参考资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或广泛的讨论。如果你觉得这个问题可以改进,并可能重新开放,visit the help center的指导。
十年前就关门了。
1.我们为什么要使用DTO和DAO,以及何时应该使用它们。我正在开发一个图形用户界面Java软件做插入,编辑,删除数据。但是我很难区分DTO/DAO和模型、视图、控制器(MVC)结构。它们是否相似,在通过Java GUI与数据库交互时更好地使用。
1.我非常好奇的一件事是,在一个类中拥有视图和控制器是否是一个好的实践。如果我们考虑NetBeans,您可以创建GUI Frame类并将JButton等组件添加到框架上,双击按钮将带您到actionListener方法(Controller),该方法似乎位于要向用户显示数据的框架中(View)。他们在同一个班级。这是不是完全违背了这个概念呢?
Here就是我要说的
在一个类中拥有视图和控制器是不好的做法吗?

dsekswqp

dsekswqp1#

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

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

DAOData Access Object的缩写,因此它应该封装用于检索,保存和更新数据存储(数据库,文件系统等)中数据的逻辑。
下面是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模式,最好有一个单独的控制器,它将包含一个单独的类中的框架的业务逻辑,并从事件处理程序向这个控制器发送消息。
这会将您的业务逻辑与视图分离。

相关问题