客户端服务器MVC架构



我希望在客户端服务器应用程序中使用MVC设计模式时获得一些输入。我看过一些关于这个的帖子,这说,一般有很多方法可以实现MVC和客户端服务器,所以我想知道我实现我的方式是否可以接受/合乎逻辑:

服务器类(控制器 ) -----------> JDBC类(模型 ) -----------------> 数据库

|
|
V 

GUI类(视图)

(抱歉,这是一个糟糕的插图。GUI类与服务器来回交互,服务器与JDBC来回交互,JDBC与数据库交互)。类之间没有其他通信

服务器、JDBC和数据库都是服务器端,GUI类是客户端。目前,每次通过客户端上的用户交互需要一个事务时,将建立一个套接字连接以连接到发送对象的服务器。然后,服务器将获取该对象,并根据其参数从JDBC类调用相关方法,然后将结果传递回服务器类,服务器类再将对象传递回GUI类,然后GUI类更新其视图。

另外,我的控制器没有视图实例和在它的构造函数中创建的模型实例。当需要一个新框架时,一个GUI类将简单地调用另一个GUI类,并根据它从控制器得到的响应更新自己(我经常看到模型应该更新视图,但是在我的情况下,模型与控制器/服务器类交互,然后通过套接字与GUI类通信,GUI类随后相应地更新自己)。

我主要关心的是这是否是一个可接受的MVC架构,以及是否可以让服务器类充当模型和视图之间的控制器。

谢谢。

这是完美的,你是通过控制器传递模型到视图。我有一个建议,我希望你没有把所有的业务逻辑放在控制器中,在控制器和模型层之间有一个应用程序服务层,它将从不同的模型做数据网格并将数据返回给控制器控制器将对象返回给视图。您可以调用从控制器返回的对象作为DTO(数据转换对象)。确保你的控制器非常薄,只是为了控制应用服务/模型层和视图之间的调用。

相关内容

  • 没有找到相关文章

最新更新