我正在用 Java 设计一个购物车 Web 应用程序。
许多 Java 应用程序似乎采用了我想使用的相同命名约定。
例如:
- _ - 持久化到数据库的实体
- ___DAO - 提供 CRUD 方法将 Item 持久化到数据库的 DAO
- ___BO - 我只看到这些用作 DAO 的薄包装。这些还有其他意义吗?
- ___Service - 用于暴露 API?
大多数设计师如何在 BO 和 Service 之间拆分代码?
我正在用 Java 设计一个购物车 Web 应用程序。
许多 Java 应用程序似乎采用了我想使用的相同命名约定。
例如:
大多数设计师如何在 BO 和 Service 之间拆分代码?
如果您不使用 EJB,我认为会有一点混乱。您命名为“实体”对象的对象是业务对象。在基于 POJO 的应用程序中,BO 代表域。看看这个示例项目:Spring's Pet Store。
“域”目录包含 BO。请注意,有一个“ service ”和一个“ dao ”目录,其中显然包含了各自的服务和 DAO。
我会直接在服务中使用 DAO(没有 BO),服务点层是添加缓存、事务性的东西,如果需要,您也可以轻松地将它们公开为 web 服务