目录

DAO层:(持久层)主要与数据库进行交互

Service层:(业务层 )控制业务

Controler层:(控制层 )控制业务逻辑

Entity层: (实体层 )数据库在项目中的类

View层: (视图层)负责前台jsp页面的表示

总结


DAO层:(持久层)主要与数据库进行交互

DAO层叫数据访问层,全称为data access object,属于一种比较底层,比较基础的操作,主要是做数据持久层的工作,主要与数据库进行交互。具体到对于某个表的增删改查,也就是说某个DAO一定是和数据库的某一张表一一对应的,其中封装了增删改查基本操作,建议DAO只做原子操作,增删改查。

注:DAO 层的数据源和数据库连接的参数都是在配置文件中进行配置的。

Service层:(业务层 )控制业务

Service层叫服务层,被称为服务,主要负责业务模块的逻辑应用设计。粗略的理解就是对一个或多个DAO进行的再次封装,封装成一个服务,所以这里也就不会是一个原子操作了,需要事物控制。和DAO层一样都是先设计放接口的类,再创建实现的类,然后在配置文件中进行配置其实现的关联。接下来就可以在service层调用接口进行业务逻辑应用的处理。

注:封装Service层的业务逻辑有利于业务逻辑的独立性和重复利用性。

Controler层:(控制层 )控制业务逻辑

Controller层负责具体的业务模块流程的控制,其实就是与前台互交,把前台传进来的参数进行处理,controller层主要调用Service层里面的接口控制具体的业务流程,控制的配置也需要在配置文件中进行。

注:Controler负责请求转发,接受页面过来的参数,传给Service处理,接到返回值,再传给页面。

Entity层: (实体层 )数据库在项目中的类

entity层存放一些普通javabean,其中有一些属性及其getter和setter方法的类,没有业务逻辑,也不允许有业务方法,也不能携带有connection之类的方法。

View层: (视图层)负责前台jsp页面的表示

此层与控制层结合比较紧密,需要二者结合起来协同工发。View层主要负责前台jsp页面的表示

Conroller层和Service层的区别是:Controlle层负责具体的业务模块流程的控制;Service层负责业务模块的逻辑应用设计

总结

  • DAO面向表,Service面向业务。后端开发时先数据库设计出所有表,然后对每一张表设计出DAO层,然后根据具体的业务逻辑进一步封装DAO层成一个Service层,对外提供成一个服务。
  • 在具体的项目中,其流程为:Controller层调用Service层的方法,Service层调用Dao层中的方法,其中调用的参数是使用Entity层进行传递的。总的来说这样每层做什么的分类只是为了使业务逻辑更加清晰,写代码更加方便,所以有时候也需要根据具体情况来,但是大体的都是这样处理的,因为它其实就是提供一种规则,让你把相同类型的代码放在一起,这样就形成了层次,从而达到分层解耦、复用、便于测试和维护的目的。

参考链接:

https://blog.csdn.net/qq_22771739/article/details/82344336

https://blog.csdn.net/whz199511/article/details/81532593

https://blog.csdn.net/dl962454/article/details/103989156

Java中dao层、service层、controller层、entity层和view层的概述相关推荐

  1. Java中 Dao,Service,Controller,Util,Model 是什么意思,为什么划分?

    来源:zhihu.com/question/58410621/answer/156868800 适合受众 :2年以下的初级程序员和0基础的门外汉 内容大纲: 1.为什么需要一个好的代码结构 2.什么样 ...

  2. JavaBean、MVC设计模式与Java中Dao、Service、Controll三层体系

    文章目录 一.JavaBean JavaBean实际就是一个普通的Java类,为了规范开发,要求JavaBean具有如下规范: ① 具有一个公共的.无参的构造方法: ② 类的属性私有,且必须提供公共的 ...

  3. 【Spring】JavaBean、MVC软件设计模式与Java中Dao、Service、Controll三层体系

    文章目录 一.JavaBean 二.Java三层体系 1.Dao层 2.Service层 3.Controller层 三者之间的关系 三.MVC设计模式 1.模型 2.视图 3.控制器 三者之间的关系 ...

  4. java中model接口与实现类_关于java中dao,model,service,impl,util的理解

    dao 与数据库的操作,增删改查等方法 model 一般都是javabean对象,例如与数据库的某个表相关联. service 供外部调用,等于对dao,model等进行了包装. impl 定义的接口 ...

  5. 项目中Dao,Service,Controller,Util,Model是什么意思,为什么划分?

    适合受众:2年以下的初级程序员和0基础的门外汉 内容大纲: 1.为什么需要一个好的代码结构 2.什么样才是一个好的结构 3.每一个分类代表什么含义 4.是否适用于WEB,Android和IOS? 5. ...

  6. 实验15:通过注解分别创建Dao、Service、Controller★

    实验15:通过注解分别创建Dao.Service.Controller(控制器:控制网站的跳转逻辑Servlet)★ 通过给bean上添加某些注解,可以快速的将bean加入到ioc容器中 某个类上添加 ...

  7. 代码结构中Dao,Service,Controller,Util,Model是什么意思,为什么划分?

    很多刚入行的小白都不太清楚代码结构中Dao,Service,Controller,Util,Model是什么意思,为什么划分?今天我们一起来详细了解一下!本文内容较为简单,只是通俗化的讲解一些简单的概 ...

  8. 中service层的作用_浅析Java中dto、dao、service、controller的四层结构

    目前我所在的项目组采用的是SpringBoot框架,前端使用BootStrap+jQuery. SpringBoot是BS开发框架之一,不用单独开启tomcat服务器,目前比较流行,一般开发大型项目时 ...

  9. SpringBoot框架中各层(DTO、DAO、Service、Controller)理解

    粗略理解 View层→Controller层(响应用户请求)→Service层(接口→接口实现类)→DAO层,即Mapper层(抽象类:xxxMapper.java文件,具体实现在xxxMapper. ...

最新文章

  1. 数据分析与数据科学圈潜在“标杆级”著作,亚马逊智囊团副团长新书
  2. Btrfs入门(一)
  3. GERBER文件格式简介
  4. 使用vue3.0和element实现后台管理模板
  5. ubuntu下Anaconda安装gym包
  6. 启明云端分享| 乐鑫刚发布的 ESP32-C2与今年五月份量产的ESP32-C3有哪些不同呢?作为两颗升级替代ESP8286的芯片,我们在应用时怎么去选择呢
  7. 【Java 排序】重写Compare方法,实现自己定义排序
  8. python递归函数的思想_Python递归函数实例讲解
  9. stixel提升思路总结
  10. 【论文阅读】Universal Domain Adaptation
  11. mysql数据库不小心删除文件_mysql数据库被删除了,怎么恢復吗
  12. Win10下Matlab r2018a 64位 中文破解版的安装以及破解方法
  13. 【看动漫学编程】程序员在异世界生个娃 第3篇:搞不好我就是个王者
  14. 模块化笔记软件 Anytype 综合评测
  15. 企业竞争情报系统的业务模式深入分析
  16. Python实现Excel表格数据去重
  17. GTK+ GUI库使用现状
  18. 魔方二维动态还原过程MATLAB仿真/魔方二维平面展开
  19. 你每天应该吃多少水果?
  20. F5 Networks数据中心资源整合解决方案

热门文章

  1. python好用的第三方库_非常有用的 Python 第三方库
  2. 浅谈Opencl四大模型之Memory Model
  3. 整合Flume和Kafka完成实时数据采集
  4. ios保存gif到相册_如何在iOS中保存和下载GIF图片
  5. phpcmsV9 如何开启wap手机站点
  6. 1024 - 十月里 - 金桂飘香 - 送给喜欢编程的你
  7. WordPress简约响应式自媒体资讯博客主题Qui-Pure v5.25
  8. 《一本书》文字展示网站Typecho主题
  9. tensorflow 转张量类型为float_TensorFlow是什么?怎么用?终于有人讲明白了
  10. 超级SEO静态页面生成系统源码