Javascript事件
什么是事件(Event)?
事件是 JavaScript 应用的核心,当我们与网页进行交互时,例如点击按钮、滚动页面等,事件就会被触发。每当这样的互动发生,都可以视为一个事件。事件处理器(Event Handler)则是负责响应这些事件的函数或代码块。
事件对象(Event Object)
介绍
当某个事件(如鼠标点击、键盘按下、表单提交等)触发时,浏览器会自动创建一个 事件对象(Event Object),并将该对象传递给事件处理函数。事件对象包含了与当前事件相关的所有信息,比如事件类型、触发事件的元素、鼠标或键盘的位置、按键状态等。
事件对象 e 为事件处理函数提供了事件相关的详细信息,包括触发事件的元素、事件类型、事件发生的位置等。事件对象可以非常有用,比如在游戏开发中,可以用来获取鼠标点击的位置。
通过事件对象,开发者可以详细了解事件发生时的具体信息,从而对用户的行为做出更精准的响应。
示例代码:
1234var el = document.querySelector('.btn');el.onclick = function(e) ...
Javascript Promise
Promise介绍
介绍
Promise 是异步编程的一种新的解决方案,它比之前的纯回调函数形式更加合理和强大。它用于处理异步操作,允许你在未来某个时间点获取操作的结果。
Promise 的表达
从语法上说:Promise 是一个构造函数。
从功能上说:Promise 实例对象可以用来封装一个异步操作,并在未来某时刻获取到其结果。
由于异步操作的结果具有不确定性,并不一定每次都能成功获取结果。Promise 技术通过状态标识不同的返回结果。
Promise 对象的三种状态:
pending:初始状态,表示尚未完成(等待中)。
resolved/fulfilled:成功状态,表示异步操作已成功并获取到了结果。
rejected:失败状态,表示异步操作失败,未能获取到结果。
Promise 的状态只能从 pending 变为 resolved 或 rejected,一旦状态发生变化就不能再改变。
状态的变化:
从 pending 变为 resolved,通过调用 resolve 函数实现。
从 pending 变为 rejected,通过调用 reject 函数实现。
Pr ...
Http
HTTP
概念:Hyper Text Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则。
特点:
基于TCP协议:面向连接,安全
基于请求-响应模型的:一次请求对应一次响应
HTTP协议是无状态的协议:对于事务处理没有记忆能力。每次请求-响应都是独立的。
缺点:多次请求间不能共享数据。
优点:速度快
请求协议
123456789101112131415161718192021222324252627282930313233GET /brand/findAll?name=OPPO&status=1 HTTP/1.1Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*Accept-Encoding: gzip, deflate, brAccept-Language: zh-CN,zh;q=0.9Host: localhost:8080User-Agent: Mozilla/5.0 (Win ...
SpringBoot登录校验
无状态协议
无状态协议是指比如客户获得一张网页之后关闭浏览器,然后再一次启动浏览器,再登录该网站,但是服务器并不知道客户关闭了一次浏览器。
会话技术
浏览器和服务器端的一次连接为一次会话
会话:用户打开浏览器,访问Wb服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求和响应。
会话跟踪:一种维护浏览器状态的方法,服务器需要识别多次请求是否来自于同一浏览器,以便在同一次会话的多次请求间共享数据,
会话跟踪方案:
客户端会话跟踪技术:Cookie
服务端会话跟踪技术:Session
令牌技术
cookie是在cookie里面存用户信息,session是在cookie里面存sessionid,拿到id后去服务端解析出来用户信息
Session优缺点
优点: 存储在服务器端,安全
确定:服务器集群环境下无法直接使用Session
令牌优缺点
优点:
支持PC、移动端
解决集群环境下的认证问题
减轻服务器的存储压力
缺点:
难以实现
HttpServletResponse
JWT令牌
简介
全称:JSON Web To ...
SpringBoot AOP
什么是 AOP
AOP: Aspect Oriented Programming (面向切面编程),是一种编程范式,侧重于将横切关注点(如日志记录、事务管理等)与核心业务逻辑分离,实现解耦和代码复用。
实现方式:
动态代理:AOP 的核心实现方式之一。Spring AOP 是 Spring 框架的高级技术,基于动态代理机制,在运行时对特定的方法进行编程和增强。
案例: 统计各个业务层方法执行耗时
添加 AOP 依赖
在 pom.xml 中导入 Spring AOP 的依赖:
1234<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>
编写 AOP 切面类
1234567891011121314151617@Component@Aspectpublic class TimeAspect { ...
SpringBoot事务管理
Springboot事务管理
简介
注解:@Transactional
位置:业务(service)层的方法上、类上、接口上
作用:将当前方法交给spring进行事务管理,方法执行前,开启事务;成功执行完毕,提交事务;出现异常,回滚事务
1234#开启事务管理日志logging: level: org.springframework.jdbc.support.jdbcTransactionManager: debug
事务属性-回滚
rollbackfor
默认情况下,只有出现RuntimeException才回滚异常 rollbackFor属性用于控制出现何种异常类型,回滚事务。
12345678910@Transactional(rollbackFor = Exception.class)@Overridepublic void delete(Integer id) throws Exception { deptMapper.deleteById(id); // 删除部门 if (true) { throw new Excepti ...
随机事件
随机事件
1. 随机试验:具有三个特点:
① 可重复性: 可以在相同的条件下重复地进行;
② 可预知性: 每次试验的可能结果不止一个,且事先知道试验的所有可能结果;
③ 不确定性: 每次试验之前不能确定哪个结果会发生。
随机试验记为 E,如抛币试验、抽硬币试验、掷骰子试验、投签试验。
2. 样本空间
随机试验 E 的所有可能结果构成的集合称为 样本空间,记为 Ω 或 S。
如:
Ω = {正,反}
Ω = {1, 2, 3, 4, 5, 6}
3. 样本点
样本空间 Ω 的每一个元素称为 样本点,记为 e 或 ω。
4. 随机事件
样本空间 Ω 的 子集 称为随机事件,记为 A、B、C,可简称为事件。
如:
Ω = {1, 2, 3, 4, 5, 6}
A = {1, 3, 5} = “掷骰子出现奇数点”
注意:
① 事件 A 的发生: 当事件 A 中的某个样本点出现,就称事件 A 发生。
② 必然事件: 必然发生的事件,记为 Ω。
③ 不可能事件: 不可能发生的事件,记为 ∅。
事件之间的关系与运算
1. 事件的包含
A ⊆ B ⇔ 若事件 A 发生,则必导 ...
SpringBoot开发规范
开发规范
1234567891011121314151617flowchart TD A[原型+需求] --> B[接口文档] B --> C[前端开发] B --> D[后端开发] C -->|请求| D D -->|响应| C subgraph 前端 C --> E[HTML JS CSS] C --> F[NGINX] end subgraph 后端 D --> G[Java] D --> H[Tomcat] end
前端人员和后端人员根据接口文档开发,接口文档通常由后端人员负责编写
RESTful
REST(Representational State Transfer),表述性状态转换,它是一种软件架构风格
12345REST风格http://localhost:8080/users/1 GET:查询id为1的用户http://localhost:8080/users POST:新增用户 htt ...
SpringBoot文件上传
简介
文件上传,是指将本地图片、视频、音频等文件上传到服务器,供其他用户浏览或下载的过程。
文件上传在项目中应用非常广泛,我们经常发微博、发微信朋友圈都用到了文件上传功能。
前端三要素
Here is the HTML code based on the image provided:
123456<form action="/upload" method="post" enctype="multipart/form-data"> 姓名: <input type="text" name="username"><br> 年龄: <input type="text" name="age"><br> 头像: <input type="file" name="image"><br> <input ty ...
质点运动学
位移、速度、加速度
位置矢量(位矢)
建立直角坐标系后,物体的位置可用坐标 $A(x, y, z)$ 表示。
向量 $\vec{r} = \overrightarrow{OA}$ 就称为位置矢量(位矢),也记为:
$\vec{r} = xi + yj + zk$
表示点 $(x, y, z)$ 的位置。
运动方程
原点坐标 $x, y, z$ 随时间的变化关系,将消掉时间 $t$ 即可。
例题
已知质点的运动学方程为:
$\vec{r} = 4t^2i + (2t + 3)j$
则质点的运动方程为:
$x = 4t^2$
$y = 2t + 3$
通过 $t = \frac{y - 3}{2}$ 代入第一个方程,得到:
$x = 4 \left( \frac{y - 3}{2} \right)^2$
化简得到:
$x = (y - 3)^2$
速度与速率
平均速度 $\vec{v} = \frac{\Delta \vec{r}}{\Delta t}$,平均速率是路程除以时间 $v = \frac{\Delta s}{\Delta t}$。
瞬时速度就是对每个坐标 ...