java-web-day6

news/2024/10/31 4:13:52/

1.请求参数:

       1.简单参数

              参数名和形参变量名一致

              不一致, 可以通过@RequestParam进行映射

       2.实体参数

       3.数组集合参数

              集合使用@RequestParam注解, 因为接受默认是数组格式

       4.日期参数

              使用LocalDateTime接受,

              需要使用@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")注解

       5.Json参数

              使用实体接受, 需要使用@RequestBody注解

       6.路径参数

              通过请求URL直接传递参数, 使用{...}来标识路径参数,

              需要使用@PathVariable来获取路径参数

2.响应

       @ResponseBody

              类型: 方法注解, 类注解

              作用: 将方法返回值直接响应, 如果返回值类型是实体对象/集合, 会转成json格式响应

返回格式如果不统一, 项目很难管理和维护,因此, 需要我们设置统一的相应格式

       Result{

              code

              msg

              data

       }

三层架构

       1.controller--负责接受请求, 响应数据

       2.service ----业务逻辑层, 负责逻辑处理

       3.dao----data access object, 数据访问层

分层解耦

       控制反转:Inversion of Control ,即IOC, 对象的创建控制权从程序自身转移到外部容器

       依赖注入: Dependency Injection,即DI,  容器为应用提供运行时需要的资源

       Bean对象:  IOC容器中,被创建管理的对象

控制反转:

       bean对象的声明:

              @Component的衍生注解

                     @Contoller--控制类

                            基本用不到, 因为@RestController=@Controller+@ResponseBody

                     @Service----业务类

                     @Repository-数据访问

              注意:

                     1.bean对象可以通过value属性指定bean的名字

                     如果没有指定, 默认为类名首字母小写

                     2.四个注解都可以声明bean, 但是在springboot集成web开发中,

                     声明控制器只能用@Controller

       bean的组件扫描

              注解想要生效, 需要被组件扫描@CompnentScan扫描到

              @ComponentScan注解虽然没有显式配置, 但默认扫描范围为启动类所在包及其子类

依赖注入:

       1.依赖注入的注解:

              @Autowired--默认按照类型自动装配

              如果存在多个同类型的bean对象:

                     1.@Primary

                     2.@Autowired+@Qualifier("bean的名称")

                     3.@Resource(name="bean对象的名称")

       2.@Resource与@Autowired的区别

              @Autowired是spring框架提供的注解, 而@Resource是JDK提供的注解

              @Autowired默认按照类型注入, 而@Resource默认按照名称注入

易错点:

       1.当一个方法后面的大括号冒红时, 大概率是缺少返回值

       2.当postman报错时, 大概率是你没有重启运行后端

请求响应阶段, 完结, 撒花

最近怎么感觉没精神更新呀,   难道是, 吃的少???? 


http://www.ppmy.cn/news/1543265.html

相关文章

论文笔记:SIBO: A Simple Booster for Parameter-Efficient Fine-Tuning

ACL 2024 1 intro 基于 Transformer 的大模型一般都有很多层 在广泛采用的 PEFT 技术(包括 Adapters 和 LoRA)中,尤其是在深层中,也存在过度平滑现象(即token之间的相似度很高)论文评估了同一语句中 toke…

24年追觅科技入职北森测评笔试:商业推理40分钟28题真题汇总、网盘资料、资源下载

在追觅科技的北森测评中,考生将面临一场时间紧迫、题目密集的挑战。本文旨在为即将参加北森测评的考生提供一份详尽的备考指南,以确保在40分钟内完成28道题目的高效答题。 考试概览 北森商业综合推理测评是评估考生综合能力的重要工具,它主…

10.29

2.3 队列 队列(Queue),它是一种运算受限的线性表,先进先出(FIFO First In First Out) 队列是一种受限的线性结构 受限之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作 P…

【Python各个击破】numpy

简介 NumPy是一个开源的Python库,它提供了一个强大的N维数组对象和许多用于操作这些数组的函数。它是大多数Python科学计算的基础,包括Pandas、SciPy和scikit-learn等库都建立在NumPy之上。 安装 !pip install numpy导入 import numpy as np用法 # 创建1*6矩阵 a = np.a…

笑死人不偿命的联想:大象是什么?

element(元素)一词,起源不明。但是它长得很像elephant(大象)一词,其同通部分为ele-这一结构,因此我们很容易将两个单词进行拆分出来: element n.元素 // ele ment名缀elephant n.大…

51单片机快速入门之 AD(模数) DA(数模) 转换 2024/10/25

51单片机快速入门之 AD(模数) DA(数模) 转换 2024/10/25 声明:本文图片来源于网络 A模拟信号特点: 电压或者电流 缓慢上升 随着时间连续缓慢上升或下降 D数字信号特点:电压或者电流 保持一段时间的高/低电平 状态 / 突变 (高电压瞬间低电压) 数字电路中 通常将0-1v电压称…

RabbitMQ延迟消息插件安装(Docker环境)

背景:当我们需要使用RabbitMQ发送延迟消息的时候,为了简化延迟消息发送的实现,一般都会给RabbitMQ安装延迟插件"rabbitmq_delayed_message_exchange" 如下会说明使用Docker启动的RabbitMQ容器如何安装延迟消息插件。 1. Docker启动…

leetcode-189-轮转数组

题解: 代码: