【发布时间】:2013-12-29 01:47:52
【问题描述】:
我在实现 1 个简单的 Web 应用程序时遇到了设计问题。 我使用 struts2 web 控制器、spring 的 IOC 和 Hibernate 作为持久层。
因为这个网络应用程序在乞讨方面非常简单。所以我只有两层: 1 DAO 层,用于访问数据库。几乎每个表都有相关的 DAO。 2 动作层。用户struts2。 我对这种架构很满意,因为可以快速实现我的 Web 应用程序。 随着项目变得越来越大,我发现动作层变得庞大而复杂,并且很难重用。 我尝试创建服务层,解决复杂的业务逻辑很好,但我的应用程序仍然有很多简单的逻辑。例如:加载 1 个对象,保存 1 个对象,通过某种条件获取集合并显示到网页。如果给每个简单的数据库访问方法都有相应的服务方法。还是费了不少功夫。如何解决这个问题? 而且我认为,如果服务层存在,直接调用 DAO 层对我的应用程序来说仍然不是很好的设计。 这种小型网络应用有什么好的解决方案吗?
【问题讨论】:
标签: java jakarta-ee architecture domain-driven-design layer