web里的action、dao/model、service、util是干啥的?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web里的action、dao/model、service、util是干啥的?相关的知识,希望对你有一定的参考价值。

参考技术A

这是一个典型的MVC的模式

action 主要是struts2,用来进行跳转的,比如jsp页面提交表单就是进入到action action在调用service的里面的逻辑,最后返回到客户端jsp页面响应请求。

dao 就是用来存放对数据库的操作的方法 没有逻辑 就是增删改查

model 就是java bean 或者pojo用来存放实体对象

service 是用来进行业务逻辑的,比如从action进到service 进行了哪些操作都在这里

util 是工具包 用来存放一些工具类 比如日期转换等

jre jdk 的配置文件

referenced Library和webappLibrary 存放jar文件

webroot 存放一下jsp或者jscss等前端显示文件还有其他的配置文件web.xml等

请问java项目 里的DAO,model,service, IMPL 是啥意思,以及有啥关系

有谁能写的详细点,深刻点,我提高悬赏

在一般工程中 基本上都会出现上述的字眼
首先 DAO 提供了应用程序与数据库之间的操作规范 和操作 用于通常数据库的增删查改 一般如果使用框架 都是由框架自动生成,提高访问效率和便于快速开发。hibernate的DAO中 提供了关于事物 数据读取 修改 删除 添加 这些逻辑 还依赖于下面提到的Model
Model 为了便于理解业务和代码可读 美观 通常将数据库表 作为对象封装,对象封装中提供属性 一般操作DAO类的时候 传入的是Model 通过 hibernate的映射文件 映射到数据库字段也就是通常说的 通过实体类操作数据库
IMPL 以IMPL 结尾的类 一般是实现了某个或多个接口的类 这些类的接口 是定义了一些规范的类通常是数据访问等等 在service 中 会通过spring的注入 注入这些接口来实现逻辑
service 一般在service的实现类 会出现在action中。这些service 提供了包含逻辑的数据访问
举个例子 在 项目中需要将查询出来的所有数据的某个值加1 那么 在service 中 就会做一次循环 从查询出来的Model 集合中 将值取出来 +1
它们的协作关系如下
web页面--->Action---->service---->interface---->IMPL---->DAO---->DATABASE
参考技术A DAO : data access object 与数据库交互的相关JAVA代码写在这,比如对DATABASE的增删改查; model:存放模型,通常是实体BEAN,也就是你业务建模分析出来的那些 actor等实物类; service:是后来网上大多数人经验总结出来,从而增加了这么一个层次,主要是为了降低耦合,面向接口、组件编程,具体的服务类,能产生实际效果和影响的类放于此; 参考技术B DAO层主要与数据库打交道,实现数据交互
model主要是一些javaben类,定义定的方法和属性,实现类的封装,以便于其他类调用它
service主要是一些方法,处理业务逻辑,接收dao里面的方法及获取model中类的属性或方法
impl是一些借口,供dao层或service层实现
之所以分这么多层,就是为了它们程序中层次分明,各司其职,其中的一层出了问题不会对其他层有太大影响,实现了高内聚、低耦合。
参考技术C 是SSH架构的工程吗?代表了三层吧,model是实例,service提供各种方法,dao实现各种方法,impl指implement,即实现,service和dao都需要impl,dao内部的方法一般是实现与数据库交互的,而model一般就是数据库中表的实例追问

工程是SSH架构的,能在详细说下各层的调用关系吗

追答

额,貌似楼下理解得比较深刻,我是个菜鸟,你还是问楼下吧,sorry

参考技术D DAO层里面一般是数据库的操作
model层里面一般是一些JavaBean,定义一些类对象
impl层定义一些了接口
service层的话一般可以不用

以上是关于web里的action、dao/model、service、util是干啥的?的主要内容,如果未能解决你的问题,请参考以下文章

请问java项目 里的DAO,model,service, IMPL 是啥意思,以及有啥关系

java中bean类,action类,model类,util类,dao等的作用是啥啊?

Java Web Action DAO Service层次理解

[转]Java Web基础——Action+Service +Dao三层的功能划分

Java Web基础——Action+Service +Dao三层的功能划分

java中的action是啥,DAO又是啥?