我正在尝试在多个Web应用程序项目中使用DAO模式。我有三个不同的Web应用程序,它们共享两个不同的数据库。每个数据库都有多个表。
现在我想知道如何通过最佳实践使我的程序模块化。我正在考虑制作:
这种做法好吗?我遇到的疑问/问题是这个设计,如果我要运送任何一个项目,我必须运送DAO项目,但这将包含有关其他数据库的不必要的信息。
或者在网络应用程序中附加所有必要的DAO会不会很好?如果是这样,那么我必须为每个Web应用程序编写相同的DAO ode。
希望任何人都可以使用DAO模式为我提供此DB连接的明确路径。
答案 0 :(得分:1)
一般而言,通过分离您的疑虑,您将朝着正确的方向前进。
您提到依赖于两个数据库的多个Web应用程序。每个Web应用程序都依赖于两个数据库吗?如果是这样,我会考虑创建一个单独的DAO项目来封装所有数据访问逻辑。
如果它更混合和匹配(Web应用程序使用db a,Web应用程序b使用db b,Web应用程序c使用a和b),我会考虑有两个DAO项目,每个数据库一个,除非有一个许多组合逻辑 - 也就是说,当一个应用程序使用两个数据库时,它们正在它们之间进行连接[是的,我已经有了这样做的项目]。
我还建议查看对象/关系映射(ORM)框架,例如Hibernate和/或依赖注入框架,例如Spring,这有助于简化分离的过程。各种项目然后一起使用它们。
您正在计划一个非常雄心勃勃的项目,因此利用现有框架来最小化重新创建轮子将让您专注于您的特定问题域。
答案 1 :(得分:0)