我创建这个我正在考虑我的看法是JSP页面,控制器servlet和模型的应用程序中,我使用MVC pattern.For作为DAO objects.I有一个疑问,我考虑DAO对象作为模型是对还是错?
Answer 1:
在MVC模型是业务逻辑住在哪里。
看着太阳的Java EE模式定义,我们看到的DAO封装持久性机制和业务对象的使用。 因此,我不看的DAO作为natuarally有任何业务逻辑。
在简单的系统,在业务逻辑在数据库中实现几个数据库表,或者那些(存储过程,引用完整性检查,触发器),那么DAO实际上是在业务逻辑的前一个门面,所以他们几乎看起来像模型。 因此,在一些介绍材料,你可能会看到DAO作为几乎模型的唯一Java表达式。
当我们选择来实现我们的Java业务逻辑,它会趴在上面DAO层,在例如会话Bean,其使用的DAO,并在我的脑海它的会话Bean或相当于其是Model。
所以问问你自己:这里是业务逻辑? 这就是模型确实是。
Answer 2:
型号是不是DAO。 这是一个层,它包含了所有的域的逻辑,并且从两种类型的元素大多组成,具有下列职责:
- 商业逻辑
- 数据访问(通常作为实现的DataMapper )
这个想法是,业务逻辑不应该被捆绑到存储机制。 当你创建一个发票,域对象不应该关心,如果数据来自SQL数据库,文件的MSWord,远程REST API或只是一个嘲弄的数据。
您可能会发现本文有趣和相关: GUI架构 。
文章来源: what is Model in MVC pattern