首页 > 其他分享 >day05-请求响应&分层耦合

day05-请求响应&分层耦合

时间:2024-03-05 10:58:18浏览次数:27  
标签:架构 请求 bean day05 分层 参数 数组 耦合 IOC

请求响应

bs架构/cs架构

bs架构:浏览器/服务器架构模式

cs架构:客户端/服务器架构模式

请求

简单参数

  • 原始方式:HttpServletRequest 对象获取
  • SpringBoot:形参接收传递的简单参数(只需参数名与形参变量名保持一致即可,如果不一致使用RequestParam注解手动映射)

实体参数

声明对象,会自动接收封装

数组集合参数

  • 数组参数:请求参数名与形参中数组变量名相同,可以直接使用数组封装
  • 集合参数:请求参数名与形参中数组变量名相同,加@RequestParam注释绑定

时间参数

@DatatimeFormat 选择参数格式

JSON参数

JSON数据键名与形参对象属性名相同,加上@RequestBody注释

路径参数

通过请求url传递参数,参数同时也是路径,因此要通过动态方式绑定。@PathVariable

统一响应结果

Result对象

分层解耦

三层架构:单一职责原则

  • ①Controller:控制层,将数据响应前端
  • ②service:业务逻辑层,逻辑处理数据
  • ③dao:数据访问层,查询数据

分层解耦:IOC&DI入门

  • IOC:控制反转

  • DI:依赖注入

  • bean:IOC容器中的对象

操作步骤:

  1. 控制反转,将控制权交给IOC容器管理,@Component
  2. 依赖注入,@AutoWired

IOC详解

  • @Component:声明bean的基础注释
  • @Controller:标注在Controller类上
  • @Service:标注在Service类上
  • @Repository:标注在Dao类上

注意:

  1. 声明bean对象时,默认为类名首字母小写
  2. @ComponentScan(集成在@SpringBootApplication(启动类)中):默认扫描当前包及其子包

DI详解

默认按照类型进行注入,如果存在多个相同类型的bean,将报错

解决方案:

  • @Primary:当前注入生效
  • @AutoWired + @Qualifier:指明注入bean对象名称
  • @AutoWired -》@Resourse:按照名称注入

标签:架构,请求,bean,day05,分层,参数,数组,耦合,IOC
From: https://www.cnblogs.com/forest-pan/p/18053491

相关文章

  • 货运车厢分层,倍增容积率的好方法
    日本某公司的侧翼装卡车分层方案卡车车厢满载率对于公路货运来说,直接关乎运营效率,干线零担货运种类庞杂,不规整,托盘化比例低,如果粗放地任由货物零散堆放,对运输空间势必造成极大浪费。另一方面,托盘化的货物,由于上下堆放运输可能产生额外问题(压坏下层货物、运输时翻倒等),一定程度上......
  • RFID射频信号的耦合与传输工作频率,增加读写成功,规避读写失败
    RFID射频信号的耦合与传输工作频率:RFID读写器通过天线RFID标签的工作频率通常分为低频、高频和超高频三种。如下:1、低频标签的工作频率为125kHz,识别距离一般在10cm以内。2、高频标签的工作频率为13.56MHz,识别距离一般在1米以内。3、超高频标签的工作频率为860MHz—960MHz,......
  • day05
    day05目录day05自定义指令指令介绍自定义指令自定义指令语法自定义指令—携指令的值需求语法自定义指令—v-loading指令的封装场景需求分析实现准备代码插槽—默认插槽作用需求问题插槽的基本语法代码示例插槽—后备内容(默认值)插槽的后备内容语法效果插槽—具名插槽需......
  • 数仓分层
    数仓分层概念:原始--->明细--->汇总(按汇总程度进行划分轻度汇总、中度汇总、重度汇总)(如:按天汇总、按累计n天汇总、特征宽表)Sql查询语句复杂,引入分层,可以方便问题定位,复杂问题简单化。......
  • {fastcluster}:快速分层聚类程序(Fast Hierarchical Clustering Routines)
    1.函数代码该R包中最主要的函数是 hclust ,代码如下:>fastcluster::hclustfunction(d,method="complete",members=NULL){if(method=="ward"){message("The\"ward\"methodhasbeenrenamedto\"ward.D\&quo......
  • 软件架构模式之第三章:分层架构
     第三章:分层架构传统的IT团队结构按照技术领域进行组织,例如演示团队、后端开发团队和数据库团队等。由于大多数架构师、设计师和开发人员对这种结构非常熟悉,分层架构成为大多数商业应用程序开发项目的自然选择。然而,就像所有架构风格一样,它具有优点和缺点,并不适用于所有系统......
  • 分层图最短路
    分层最短路用更加具体或者形象一点的说法就是有限制的最短路径问题。通常是拆点解决问题,原图中的点加上一个当前点的状态,成为一个新的点P4568[JLOI2011]飞行路线P4568[JLOI2011]飞行路线#include<bits/stdc++.h>#defineintlonglong#definerep(i,a,b)for(inti=......
  • 分层架构
    分层架构(layeredarchitecture)是最常见的软件架构,也是事实上的标准架构。如果你不知道要用什么架构,那就用它。这种架构将软件分成若干个水平层,每一层都有清晰的角色和分工,不需要知道其他层的细节。层与层之间通过接口通信。虽然没有明确约定,软件一定要分成多少层,但是四层的结构......
  • 分层图
    题目描述P4568[JLOI2011]飞行路线题目分析显然,这是一道最短路径的题目,我们可以选择\(Dijkstra\)算法求解。但是,题目中有他们可以免费在最多k种航线上搭乘飞机。也就是说,我们可以令最多\(k\)条边的权值为零。这时,我们就要采用分层图。分层图分层图并不是算法,而是一种......
  • r语言有限正态混合模型EM算法的分层聚类、分类和密度估计及可视化|附代码数据
    原文链接:http://tecdat.cn/?p=23825最近我们被客户要求撰写关于有限正态混合模型EM算法的研究报告,包括一些图形和统计输出。简介本文介绍了基于有限正态混合模型在r软件中的实现,用于基于模型的聚类、分类和密度估计。提供了通过EM算法对具有各种协方差结构的正态混合模型进行参......