DAO层,Service层,Controller层、View层

DAO层,Service层,Controller层、View层DAO 层 DAO 层主要是做数据持久层的工作 负责与数据库进行联络的一些任务都封装在此 DAO 层的设计首先是设计 DAO 的接口 然后在 Spring 的配置文件中定义此接口的实现类 然后就可在模块中调用此接口来进行数据业务的处理 而不用关心此接口的具体实现类是哪个类 显得结构非常清晰 DAO 层的数据源配置 以及有关数据库连接的参数都在 Spring 的配置文件中进行配置 nbsp nbsp nbsp nbsp Service 层 Service 层主要负责业务模块的逻辑应用设计 同样是首先设计接口 再设计其实现的类 接着再 Spring 的配置文件中配

  1. DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置。   
  2.   
  3. Service层:Service层主要负责业务模块的逻辑应用设计。同样是首先设计接口,再设计其实现的类,接着再Spring的配置文件中配置其实现的关联。这样我们就可以在应用中调用Service接口来进行业务处理。Service层的业务实现,具体要调用到已定义的DAO层的接口,封装Service层的业务逻辑有利于通用的业务逻辑的独立性和重复利用性,程序显得非常简洁。   
  4.   
  5. Controller层:Controller层负责具体的业务模块流程的控制,在此层里面要调用Serice层的接口来控制业务流程,控制的配置也同样是在Spring的配置文件里面进行,针对具体的业务流程,会有不同的控制器,我们具体的设计过程中可以将流程进行抽象归纳,设计出可以重复利用的子单元流程模块,这样不仅使程序结构变得清晰,也大大减少了代码量。   
  6.   
  7. View层 此层与控制层结合比较紧密,需要二者结合起来协同工发。View层主要负责前台jsp页面的表示,   
  8.   
  9. DAO层,Service层这两个层次都可以单独开发,互相的耦合度很低,完全可以独立进行,这样的一种模式在开发大项目的过程中尤其有优势,Controller,View层因为耦合度比较高,因而要结合在一起开发,但是也可以看作一个整体独立于前两个层进行开发。这样,在层与层之前我们只需要知道接口的定义,调用接口即可完成所需要的逻辑单元应用,一切显得非常清晰简单。   
  10.   
  11. DAO设计的总体规划需要和设计的表,和实现类之间一一对应。   
  12.   
  13. DAO层所定义的接口里的方法都大同小异,这是由我们在DAO层对数据库访问的操作来决定的,对数据库的操作,我们基本要用到的就是新增,更新,删除,查询等方法。因而DAO层里面基本上都应该要涵盖这些方法对应的操作。除此之外,可以定义一些自定义的特殊的对数据库访问的方法。   
  14.   
  15. Service逻辑层设计   
  16.   
  17. Service层是建立在DAO层之上的,建立了DAO层后才可以建立Service层,而Service层又是在Controller层之下的,因而Service层应该既调用DAO层的接口,又要提供接口给Controller层的类来进行调用,它刚好处于一个中间层的位置。每个模型都有一个Service接口,每个接口分别封装各自的业务处理方法。   
  18.   
  19. 在DAO层定义的一些方法,在Service层并没有使用,那为什么还要在DAO层进行定义呢?这是由我们定义的需求逻辑所决定的。DAO层的操作 经过抽象后基本上都是通用的,因而我们在定义DAO层的时候可以将相关的方法定义完毕,这样的好处是在对Service进行扩展的时候不需要再对DAO层进行修改,提高了程序的可扩展性。  
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233945.html原文链接:https://javaforall.net

(0)
上一篇 2025年6月9日 下午12:01
下一篇 2025年6月9日 下午12:22


相关推荐

  • pgrouting 路径规划_路径分析是什么意思

    pgrouting 路径规划_路径分析是什么意思一.技术背景,相关技术介绍   PgRouting是基于开源空间数据库PostGIS用于网络分析的扩展模块,最初它被称作pgDijkstra,因为它只是利用Dijkstra算法实现最短路径搜索,之后慢慢添加了其他的路径分析算法,如A算法,双向A算法,Dijkstra算法,双向Dijkstra算法,tsp货郎担算法等,然后被更名为pgRouting[1]。该扩展库依托PostGIS自身的g…

    2022年8月24日
    6
  • 摄像头-MIPI接口、DVP接口和CSI接口[通俗易懂]

    摄像头-MIPI接口、DVP接口和CSI接口[通俗易懂]本文转自摄像头的MIPI接口、DVP接口和CSI接口-百度经验(baidu.com),感谢作者分享一般来讲,摄像头的接口主要有MIPI接口、DVP接口、CSI接口三大类;我们常用的电脑摄像头接口是USB接口,而常见的智能手机上的摄像头是MIPI接口,还有一部分的摄像头(比如说某些支持DVP接口的硬件)是DVP接口;通俗的讲,USB是串行通用串行总线(UniversalSerialBus)的简称,而MIPI是移动行业处理器接口(MobileIndustryProcessorInterf

    2022年6月11日
    189
  • this.$refs使用方法

    this.$refs使用方法this refs 在 vue 中 ref 可以以属性的形式添加给标签或者组件 ref 写在标签上时 this refs ipt 获取的是添加了 ref ipt 标签对应的 dom 元素 ref 写在组件上时 this refs component 获取到的是添加了 ref component 属性的这个组件 template 给标签使用 inputtype text ref ipt 给组件使用 template

    2026年3月16日
    3
  • C++ vector用法(详解!!函数,实现)

    C++ vector用法(详解!!函数,实现)1,简述一下vector的基本操作,它的size,capacity(),clear,reverse,reserve,  push_back等!!!2,说说,vector的存储特性,是顺序存储还是如同链表般,如果是顺序存储的话,那么是如何执行  erase,insert等函数,???(假如后面的空间不够的话,我们需要合理的算法来重新找出一块  相应的空间吗???拷贝,回收吗???是不

    2022年6月15日
    49
  • 如何快速用上OpenClaw?这应该是全网使用 OpenClaw 最方便快捷的方式

    如何快速用上OpenClaw?这应该是全网使用 OpenClaw 最方便快捷的方式

    2026年3月17日
    3
  • Maven Web报错:org.apache.jasper.JasperException: Unable to compile class for JSP「建议收藏」

    MavenWeb报错:org.apache.jasper.JasperException:UnabletocompileclassforJSP今天被这个问题弄得,拽下了一大把的头发!哭唧唧~~~

    2022年4月6日
    222

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号