我收到了一个 Java 应用程序,可以在它上面应用三层架构风格;要做的用例之一是登录。我已经研究了适用于这种架构风格的所有理论和规则,但我需要了解各个级别之间对象合作的逻辑以及模式如何在每个级别上协同工作以实现这个(和其他)使用案子。
首先,我创建了三个基本包:Presentation、Application和Data。此外,我还包含了一个关于边界类的包,即发送请求的各种 GUI。
在表示层,我只是放置了一个前端控制器,它封装了客户端使用应用程序所需的表示逻辑。
在数据层,我放置了一个DatabaseConnection类(与数据库通信的类,负责加载驱动程序、连接到数据库、查询等)和DAO 类(数据访问对象,与数据库接口)。
真正的问题是我不知道在Application级别放什么,它代表了应用程序的主要部分,定义了应用程序的领域模型,即:它们的实体、它们的关系和应用程序逻辑。它不应包含对如何向用户呈现数据或如何保存数据的任何参考。
所以,我目前有这个层次结构:
Main ---> Boundary > Presentation > Application > Data > Database
按照这个架构,怎么做一个简单的登录呢?请记住,每个级别只能与底层级别进行通信;例如Boundary层的类不能直接和Data层的类通信,Boundary的类只能和Presentation的类通信。如有必要,您可以发布一个伪代码,其中提出了要执行的步骤。