在Struts2中,DAO属于那一层?

来源:百度知道 编辑:UC知道 时间:2024/09/20 07:30:27
在Struts2的MVC模型中,DAO属于那一层?
还有,自己写的一些公函的类,又属于哪一层呢?
都是属于模型吗

我简单回答一下。

明确DAO的概念,DAO是Data Access Object数据访问接口,数据访问:故名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。Struts是java在web开发中常用的框架之一。是利用了MVC设计模式。MVC即Model-View-Controller的缩写,是一种常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。那么常用的框架还有比如:hibernat和spring。那么在,SSH设计过程中,Struts只作为V部分来使用,只控制视图部分。hibernate作为连接数据库的框架,而在spring编写M和C的部分,也就是模型和数据逻辑部分。
如果你做一个自己的项目练习不使用hibernate来连接数据库而采用jdbc和DAO模式代替的话,那我认为你算它是M也可以,因为在jdbc中定义了数据库属性(就好像hibernate的对象关系映射一样),你算它是C也行,因为DAO中写了修改数据库的方法,比如增删改查方法。所以不必计较它是什么部分,只要记住它能做什么!
至于你说的公函的类,我不清楚是什么东西。但是你记住V(视图),是用户用眼睛能看见的部分,M(模型)是事物本身的一些属性抽象化定义出来,而C(控制)往往是方法,里面的数值是需要变化的。比如用户输入个1,通过C返回一个“你好”,用户输入个2,通过C判断返回一个“再见”。

希望对你有帮助

如果细化点分下:
jsp页面表示层
action控制层
facade或者service业务逻辑层
dao数据访问层
jdbc或hibernate/ibatis等数据持久层
经常还会写些工具类util

MVC 中的 M
DAO(Data Access Object)负责对象持久化的

DAO是专门处理数据访问的,对于MVC的思想,只要是处理具体业务的都是属于Model。所以你的想法是正确的,都是属于模型。