当前位置: 首页 > news >正文

分层解耦——三层架构

三层架构

  • Controller:接收请求,响应数据
  • Service:业务逻辑处理
  • Dao:数据访问操作

作用遵循单一职责原则,提高代码的复用性,便于后期对代码的维护

Service从Dao中拿到数据后进行解析、加工操作,封装到一个集合当中,再把处理完的数据返回给Controller,Controller再把数据响应给前端


项目结构

我们在com.itheima包定义三个包分别为controller、service、dao


  • controller包下定义一个类UserController用于接收前端的请求并响应用户数据
  • service包下定义一个接口UserService,定义一个方法用于处理用户信息,返回值为List
  • dao包下定义一个接口UserDao,定义一个方法用于加载用户数据,返回值为List

  • service包下创建一个实现类UserServiceimpl,用于重写UserService接口中的方法,进行数据的加工封装
  • dao包下创建一个实现类UserDaoimpl,用于重写UserDao接口中的方法,用于加载用户数据

  • UserServiceimpl中创建Userdao的对象(多态:UserDao userDao = new UserDaoimpl())调用UserDaoimpl的方法,获取到用户数据,进行加工
  • UserController中创建UserService的对象(多态:UserService userService = new UserServiceimpl())调用UserServiceimpl的方法,获取到封装好的用户数据,进行返回

http://www.jsqmd.com/news/827679/

相关文章:

  • 告别yalmiptest报错:Matlab调用Gurobi求解器的完整环境配置与调试手册
  • 魔兽争霸3终极增强插件:8大功能全面提升游戏体验完整指南
  • 5G上网时,你的手机“临时身份证”5G-GUTI是怎么生成和工作的?
  • 2026年周边传动刮泥机厂家:三大核心趋势解读 - 资讯速览
  • 5大核心功能解析:Akebi-GC开源游戏辅助工具全面指南
  • CSS clip-path 裁剪完全指南
  • 保姆级教程:在VMware上快速部署Kali Purple 2023.1,并配置国内更新源
  • Tinke深度实战:掌握NDS游戏资源解包与修改的完整解决方案
  • 利用iPad屏幕DIY桌面副屏:模块化改造与驱动板应用指南
  • 2026年618大促5月12日全面开启:618什么时候购买手机家电最便宜?618低价时间节点、跨店满减规则、618红包口令全攻略 - 资讯速览
  • Unity开发中,反射如何成为你的“动态装配线”?——从插件加载到数据驱动的实战解析
  • ITK-SNAP:医学图像分割的终极免费工具,从零开始掌握3D影像分析
  • 一键永久激活Windows和Office:KMS智能激活脚本终极方案
  • 0.5mm间距QFN/MLF封装SMT仿真适配器技术解析
  • STM32驱动PCA9535:从端口批量操作到单引脚精准控制
  • 2026年上海膜结构停车棚与推拉棚厂家精选:五大实力品牌全解析 - 资讯速览
  • 如何用FigmaCN实现Figma界面完全汉化:设计师的完整中文体验指南
  • 新手也能搞懂的风电场电气设计:从690V风机到110kV并网的完整设备选型清单
  • ARM架构TRFCR_EL2寄存器解析与虚拟化调试应用
  • 实战:用ABAP OPEN DATASET处理UTF-8 CSV文件(含BOM与换行符详解)
  • 从架构到应用:DNNGP、DeepGS与DLGWAS三大基因预测模型深度剖析
  • 告别编译碎片化:用MLIR统一你的AI模型部署,从PyTorch到TPU实战
  • 从一次数据泄露事件复盘:我是如何在Java后台用BCrypt守住最后防线的
  • 月纯利超3万:虾火锅底料厂家助力转型成功案例 - 资讯速览
  • Arduino端口扩展实战:用74HC148级联实现32路输入编码与状态机管理
  • 轻量级HTTP代理工具outlet:配置即代码,快速解决跨域与API转发
  • qmc-decoder终极指南:如何快速解密QQ音乐QMC加密音频文件
  • 3个为什么让番茄小说下载器成为数字阅读新选择?
  • 从零开始在个人项目中接入Taotoken的完整步骤与体会
  • OBS虚拟摄像头终极指南:3步将直播画面变成专业会议摄像头