百度测开初面面试题分享(答案+文档)

news2024/11/20 3:35:10

1、java常用的异常处理机制

Java常用的异常处理机制有以下几种:

1)try-catch-finally语句:用于捕获和处理异常。将可能抛出异常的代码放在try块中,然后在catch块中处理异常。无论是否发生异常,finally块中的代码都会被执行。

try {
// 可能抛出异常的代码
} catch (ExceptionType1 e) {
// 处理ExceptionType1类型的异常
} catch (ExceptionType2 e) {
// 处理ExceptionType2类型的异常
} finally {
// 无论是否发生异常,都会执行的代码
}

2)throw关键字:用于手动抛出异常。当程序遇到某种特定情况时,可以使用throw关键字抛出一个异常对象。

if (条件) {
throw new Exception("异常信息");
}

3)throws关键字:用于声明方法可能抛出的异常类型。当一个方法可能抛出异常,但不处理该异常时,可以在方法签名后使用throws关键字声明异常类型,让调用者处理异常。    

public void methodName() throws ExceptionType1, ExceptionType2 {
// 可能抛出异常的代码
}

3)自定义异常类:可以创建一个继承自Exception或RuntimeException的自定义异常类,用于表示程序中特定的错误或异常情况。

class CustomException extends Exception {
public CustomException(String message) {
super(message);
}
}

同时,我也为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看,也可以直接点击文末小卡片免费领取资料文档

软件测试视频教程观看处:

字节大佬教你逼自己如何在15天内掌握自动化测试(接口自动化/APP自动化/Web自动化/性能测试),内含项目实战

2、异常的两个子类

Java的异常类都是java.lang.Throwable的子类。它派生了两个子类:Error(错误)和Exception(违例) 。Error表示程序无法处理的异常,通常不应该抛出或捕获这类异常。Exception表示程序可能处理的异常,包括受检异常和非受检异常。受检异常是指编译器要求必须处理的异常,例如IOException、SQLException等。非受检异常是指编译器不要求必须处理的异常,例如NullPointerException、ArrayIndexOutOfBoundsException等

3、项目的日志,日志分哪些级别

在项目中,日志分为五个级别:TRACE、DEBUG、INFO、WARN和ERROR。其中,TRACE级别的日志记录最详细的信息,DEBUG级别的日志记录是最详细的调试信息,INFO级别的日志记录是一般的运行信息,WARN级别的日志记录是警告信息,ERROR级别的日志记录是错误信息  。

4、equals和==的区别

在Java中,==和equals()的区别如下:

- ==比较的是两个对象的值是否相等,而equals()比较的是两个对象引用所指向的内容是否相等。

- ==比较的是两个对象的引用地址,而equals()比较的是两个对象的内容。

- 如果一个类没有重写equals()方法,那么调用equals()方法就相当于调用了它的父类的equals()方法。如果一个类重写了equals()方法,那么就需要根据具体情况来判断是否需要使用equals()方法来比较两个对象。


5、简单说一下java的IO流

Java IO流是一种流式的数据输入/输出模型,它提供了一种高效的方式来处理输入/输出数据。Java IO流分为字节流和字符流两种类型。字节流是以字节为最小单位进行读写的,而字符流则是以字符为最小单位进行读写的。Java IO流中包含了许多类,如InputStream、OutputStream、Reader、Writer等,每个类都有其特定的用途。例如,FileInputStream和FileOutputStream用于文件的读取和写入,BufferedReader和BufferedWriter则可以对数据进行缓冲,提高读写效率   。

6、给了一个处理json文件的场景题

7、java中有哪些集合类

Java中的集合类是Java数据结构的实现。Java的集合类是java.util包中的重要内容,它允许以各种方式将元素分组,并定义了各种使这些元素更容易操作的方法。Java集合类是Java将一些基本的和使用频率极高的基础类进行封装和增强后再以一个类的形式提供。集合类是可以往里面保存多个对象的类,存放的是对象,不同的集合类有不同的功能和特点,适合不同的场合,用以解决一些实际问题 。

常用的集合类有List、Set、Map等。其中List是有序、可重复的集合,Set是无序、不可重复的集合,Map是键值对形式的集合 。

8、哪个是线程安全,哪个是线程不安全的(接上一问)

Java中的集合类有线程安全和不安全的之分。线程安全是指在多线程环境下,集合类的行为符合预期,不会出现数据丢失、数据错误等问题。而不安全的集合类则可能会在多线程环境下出现数据丢失、数据错误等问题  。

常用的线程安全的集合类有Vector、HashTable、Properties等,而常用的线程不安全的集合类有ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等 。

9、线程池有哪些作用

线程池是一种池化的技术,类似的还有数据库连接池、HTTP 连接池等等。池化的思想主要是为了减少每次获取和结束资源的消耗,提高对资源的利用率。比如在一些偏远地区打水不方便的,大家会每段时间把水打过来存在池子里,这样平时用的时候就直接来取就好了。线程池同理,正是因为每次创建、销毁线程需要占用太多系统资源,所以我们建这么一个池子来统一管理线程。用的时候从池子里拿,不用了就放回来,也不用你销毁,是不是方便了很多?  

线程池的作用主要有以下几点:   

- 避免创建过多的线程时引发的内存溢出问题。

- 降低资源消耗。

- 复用线程、便利地管理线程和任务、并将线程的创建和任务的执行解耦开来。

- 控制同时运行的线程数量,避免线程过多导致系统资源占用过高,甚至崩溃的问题发生。

10、java的垃圾回收机制gc

11、mysql场景题,查一个学生表里面学生的总数,查学生表里面姓张的学生,查成绩最大的那个学生。

1)查一个学生表里面学生的总数:

SELECT COUNT(*) FROM 学生表;

2)查学生表里面姓张的学生:

SELECT * FROM 学生表 WHERE 姓名 LIKE '张%';

3)查成绩最大的那个学生:

SELECT * FROM 学生表 WHERE 成绩 = (SELECT MAX(成绩) FROM 学生表);

12、Linux中常用的命令(这里我说了vim)  

Vim 是一个强大的文本编辑器,它在终端中运行,并且有着丰富的功能和快捷键。以下是一些 Vim 的常见命令:
1. **打开文件和保存文件**:   - 打开文件:`vim 文件名`   - 保存文件:在普通模式下,输入 `:w` 并按 Enter 键   - 保存并退出:在普通模式下,输入 `:wq` 并按 Enter 键   - 不保存并退出:在普通模式下,输入 `:q!` 并按 Enter 键
2. **普通模式(Normal Mode)**:   - 进入普通模式:按下 `Esc` 键   - 移动光标:使用方向键或以下快捷键:     - `h`:左移     - `j`:下移     - `k`:上移     - `l`:右移   - 删除字符:     - `x`:删除光标下的字符   - 复制和粘贴:     - `yy`:复制当前行     - `p`:粘贴   - 撤销和重做:     - `u`:撤销     - `Ctrl + r`:重做
3. **插入模式(Insert Mode)**:   - 进入插入模式:     - `i`:在光标前插入     - `a`:在光标后插入     - `I`:在当前行的开头插入     - `A`:在当前行的末尾插入   - 退出插入模式:按下 `Esc` 键
4. **可视模式(Visual Mode)**:   - 进入可视模式:     - `v`:按字符选中文本     - `V`:按行选中文本   - 复制选中文本:按 `y`   - 剪切选中文本:按 `x` 或 `d`   - 粘贴:在普通模式下按 `p`
5. **搜索和替换**:   - 搜索:在普通模式下,输入 `/`,然后输入要搜索的文本,按 Enter 键。可以使用 `n` 和 `N` 来浏览搜索结果。   - 替换:在普通模式下,输入 `:%s/要替换的文本/替换成的文本/g` 来替换全文中的匹配项。
6. **跳转和撤销**:   - 跳转到行号:在普通模式下,输入 `:`,然后输入行号,按 Enter 键。   - 撤销:在普通模式下,输入 `u`。
7. **保存和退出**:   - 保存文件:在普通模式下,输入 `:w` 并按 Enter 键。   - 保存并退出:在普通模式下,输入 `:wq` 并按 Enter 键。   - 不保存并退出:在普通模式下,输入 `:q!` 并按 Enter 键。

13、怎么用vim去替换一个文件中的所有test替换成dev

:%s/test/dev/g

14、怎么查看最新修改的十个文件(用ls看)  

ls -lt | head -n 10这个命令的作用是:
ls -lt:列出当前目录下的文件和子目录,按照修改时间从新到旧的顺序排序。
-l:以长格式显示文件信息,包括文件权限、所有者、大小、修改时间等。-t:按照修改时间排序。head -n 10:从排序后的文件列表中取前 10 行,即显示最新修改的十个文件。
这样,你就可以看到最新修改的十个文件的列表,它们将按照修改时间从新到旧的顺序显示在终端中。如果你想查看不同数量的文件,只需更改 head 命令中的数字即可。例如,如果你想查看最新修改的五个文件,可以使用 head -n 5。

15、怎么查看当前目录占了多少磁盘容量  

du -sh .这个命令的作用是:
du:表示计算磁盘使用情况。-s:表示汇总结果,只显示目录的总大小而不显示子目录的大小。-h:以人类可读的格式显示文件大小,以 K、M、G 等单位表示。.:表示当前目录。

16、怎么查看当前进程占用了多少内存  

ps aux如果你要查看特定进程的内存占用情况,你可以使用 grep 命令来筛选出相关信息。假设你知道要查找的进程名称,例如 myprocess,则可以使用如下命令:ps aux | grep myprocess

17、了解top吗,就是用top看占用了多少内存  

默认情况下,top 会显示所有运行的进程,按照 CPU 使用率排序。你可以按 Shift+M 来按照内存使用率排序,以便查看占用内存最多的进程在列表的顶部。
top 会实时更新进程列表和资源使用情况。你可以在列表中看到每个进程的 PID(进程标识符)、内存使用量(RES 列)、内存使用率(%MEM 列)等信息。
若要退出 top,可以按下 q 键。

18、你知道了一个端口号,怎么查pid  

netstat -tuln | grep 端口号sudo lsof -i :端口号

19、awk命令grep命令
20、你有一个日志文件,怎么看日志文件中包含error的信息。

grep "error" 文件名

21、内存泄露是什么

服务器内存泄漏是指服务器应用程序在运行时持续分配内存而不释放,导致服务器的内存使用量逐渐增加,最终可能耗尽可用内存,导致服务器性能下降或崩溃。内存泄漏是一种常见的软件问题,通常需要仔细的诊断和修复。

22、你了解的服务器是什么

"服务器" 通常指的是计算机网络中的硬件或软件,它们提供服务、资源或数据给其他计算机或设备,以满足客户端的请求。服务器在网络中扮演着重要的角色,用于存储和管理数据、提供网络服务、托管网站、支持应用程序等多种用途。

以下是一些关于服务器的常见概念:

  1. 硬件服务器:这是指物理服务器,通常是一台专用的计算机,用于执行服务器软件和提供各种服务。硬件服务器可以是机架式服务器、塔式服务器、刀片服务器等不同形式。

  2. 虚拟服务器:虚拟服务器是在物理服务器上通过虚拟化技术创建的虚拟实例。一台物理服务器可以托管多个虚拟服务器,每个虚拟服务器都可以运行独立的操作系统和应用程序。

  3. 服务器软件:服务器软件是安装在服务器硬件上的应用程序,用于提供各种服务,例如网络服务、数据库服务、文件共享等。常见的服务器操作系统包括Linux、Windows Server等。

  4. Web 服务器:Web 服务器是一种特殊类型的服务器,用于托管网站和提供网页内容给客户端浏览器。常见的Web服务器包括Apache、Nginx、IIS等。

  5. 数据库服务器:数据库服务器是用于存储和管理数据库的服务器,允许客户端应用程序访问和操作数据库中的数据。常见的数据库服务器包括MySQL、PostgreSQL、Oracle等。

  6. 应用服务器:应用服务器是用于托管和执行应用程序的服务器,通常用于支持业务逻辑和应用程序的后端处理。Java应用服务器如Tomcat、WebLogic和应用服务器如Node.js都是常见的例子。

  7. 文件服务器:文件服务器是用于存储和共享文件的服务器,允许多个用户访问和共享存储在服务器上的文件和资源。

  8. 云服务器:云服务器是在云计算平台上运行的虚拟服务器实例,它们通常由云服务提供商托管和管理。用户可以根据需要创建、配置和扩展云服务器。

服务器在企业和互联网应用程序中起着关键作用,提供了可靠的资源和服务,使用户能够访问和共享信息。它们可以是物理的,也可以是虚拟的,根据不同的需求和规模选择适当的服务器架构和配置。
 

23、怎么在服务器部署mysql服务

24、SSH命令是干嘛的

SSH(Secure Shell)是一种网络协议和加密技术,用于安全地远程访问和管理计算机系统。SSH 的主要用途包括以下几个方面:

  1. 远程登录:SSH 允许用户从本地计算机安全地登录到远程计算机系统。这是通过加密通信实现的,因此敏感数据(如用户名和密码)在传输过程中受到保护。SSH 远程登录通常用于远程服务器、网络设备和云计算实例的管理。

  2. 文件传输:SSH 可以用于安全地传输文件,包括上传和下载文件。一个常见的用例是使用 scp(Secure Copy Protocol)命令,它基于 SSH,用于在本地计算机和远程服务器之间复制文件。

    例如,从本地复制文件到远程服务器:

  3. scp 文件名 用户名@远程服务器IP:目标路径

  4. 从远程服务器复制文件到本地

  5. scp 用户名@远程服务器IP:远程文件路径 本地目标路径

  6. 远程命令执行:SSH 允许用户在远程计算机上执行命令,无需直接登录到远程系统。这对于自动化和批处理任务非常有用。使用 ssh 命令可以在远程系统上执行命令,例如:

  7. ssh 用户名@远程服务器IP "远程命令"

  8. 端口转发:SSH 支持端口转发,允许用户在安全通信隧道中传输流量。这对于保护敏感服务和访问受限制的资源非常有用。SSH 可以进行本地端口转发和远程端口转发。

  9. 加密通信:SSH 使用加密技术来保护通信的机密性和完整性。这使得黑客难以窃听或篡改数据传输。SSH 通常使用公钥和私钥对来进行身份验证,以确保只有授权用户可以访问系统。

总之,SSH 是一种安全的远程管理协议,用于远程登录、文件传输、执行远程命令等任务,它在网络和系统管理中起着重要作用,特别是在保护敏感数据和系统安全方面。


25、讲一下git怎么上传项目,怎么解决冲突

要上传项目到 Git 并解决冲突,通常需要以下步骤。在这个示例中,假设你已经在本地计算机上创建了一个 Git 仓库,想要将其推送到远程仓库,并且在推送时可能会遇到冲突。

上传项目到 Git(推送到远程仓库)的步骤:

1.初始化仓库:如果你的项目尚未初始化为 Git 仓库,请运行以下命令:  

git init

2.添加文件:将项目中的文件添加到 Git 仓库的暂存区(staging area):

git add .

这会将所有更改添加到暂存区。如果只想添加特定文件,可以使用 git add 文件名

3.提交更改:将暂存区中的更改提交到本地仓库,同时添加提交消息:

git commit -m "提交消息"

4.连接到远程仓库:将本地仓库与远程仓库关联,并添加远程仓库的地址:

git remote add origin 远程仓库地址

例如:

git remote add origin https://github.com/你的用户名/你的仓库.git

5.推送到远程仓库:将本地仓库的更改推送到远程仓库:

git push -u origin 主分支名称

例如:git push -u origin main

这会将项目上传到远程仓库。-u 选项用于将本地主分支与远程主分支关联起来,以便将来的推送和拉取。

解决冲突的步骤:

如果在推送项目时遇到冲突,通常是因为远程仓库中的更改与你的本地更改产生了冲突。解决冲突的步骤如下:

1.拉取最新更改:在解决冲突之前,首先拉取远程仓库的最新更改:

2.git pull origin 主分支名称

例如

3.git pull origin main

这将在本地合并远程仓库的更改。

4.解决冲突:打开包含冲突的文件,通常会看到冲突部分被包裹在类似以下的标记中:

<<<<<<< HEAD
本地更改
=======
远程更改
>>>>>>> 远程/分支名称
你需要手动编辑文件,保留需要的更改并删除不需要的部分。解决冲突后,保存文件。

5.标记为已解决:一旦解决了冲突,使用以下命令标记文件为已解决:

6.git add 文件名

7.提交更改:提交解决冲突后的更改

8.git commit -m "解决冲突"

9.推送更改:将解决冲突后的更改推送到远程仓库:

10.git push origin 主分支名称

例如:

11.git push origin main

26、深挖了项目

总结

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近100个G。

☑ 240集-零基础到精通全套视频课程
☑ [课件+源码]-完整配套的教程
☑ 18套-测试实战项目源码
☑ 37套-测试工具软件包
☑ 268道-真实面试题
☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1011126.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法总结10 线段树

算法总结10 线段树 线段树2569. 更新数组后处理求和查询 线段树 有一个数组&#xff0c;我们要&#xff1a; 更新数组的值&#xff08;例如&#xff1a;都加上一个数&#xff0c;把子数组内的元素取反&#xff09;查询一个子数组的值&#xff08;例如&#xff1a;求和&#x…

【进阶篇】MySQL数据库中的 锁详解

文章目录 1. 介绍2. MySQL 锁类型3. 锁的粒度4. 锁的使用场景和示例5. 锁的性能优化和注意事项6. MySQL 的锁机制和实现细节1. 锁的存储和管理2. 锁的竞争和调度3. 锁的实现原理 7. 锁的调优和故障处理1. 锁等待和超时&#xff1a;2. 死锁处理和恢复&#xff1a;3. 锁的监控和分…

AtCoder Beginner Contest 313 C 一个序列同时加一个数和减一个数,直到最大和最小之间相差最大为1(结论可记住)

AtCoder Beginner Contest 313 C 做题链接&#xff1a;AtCoder Beginner Contest 313 问题陈述 给你一个整数序列 A(A1​,A2​,…,AN​)。你可以执行以下操作任意次数&#xff08;可能为零&#xff09;。 选择带有 1≤i,j≤N的整数 i和 j。将Ai​减少 1&#xff0c;将Aj​增…

珂学送分

从后往前倒着走。 先找出每个点能走到的最远的右端点是什么&#xff0c;记录为r[i]&#xff0c;每个点i可能分为的情况有(r[i] - i 1)种&#xff0c;每一种的概率是1 / (r[i] - i 1)&#xff0c;&#xff08;每一种的概率乘以它后面那个格子的期望&#xff09;之和再加自己的…

Python用若干列的数据多条件筛选、去除Excel数据并批量绘制直方图

本文介绍基于Python&#xff0c;读取Excel数据&#xff0c;以一列数据的值为标准&#xff0c;对这一列数据处于指定范围的所有行&#xff0c;再用其他几列数据数值&#xff0c;加以筛选与剔除&#xff1b;同时&#xff0c;对筛选与剔除前、后的数据分别绘制若干直方图&#xff…

Peppercontent.io:人工智能驱动的内容生成工具

【产品介绍】​ 名称 Peppercontent.io 成立时间​ 成立于2017年 具体描述 Peppertype.ai 是一种基于GPT-3的AI辅助工具&#xff0c;而GPT-3则是一种深度学习自回归语言模型。这一技术潜藏着巨大的潜力&#xff0c;可以立刻为企业和创作者提供创意内容&…

JavaScript的DOM操作(二)

一、元素的特性attribute 1.元素的属性和特性 前面我们已经学习了如何获取节点&#xff0c;以及节点通常所包含的属性&#xff0c;接下来我们来仔细研究元素Element。 我们知道&#xff0c;一个元素除了有开始标签、结束标签、内容之外&#xff0c;还有很多的属性&#xff0…

influxdb2.7基本介绍安装与启动

概念 timestamp: influxdb所有的数据都会有一个列_time来存timestamp。默认是以nanosecond格式存储的。field: field就是mysql中的字段&#xff0c;field key存储在_field字段中&#xff0c;field value就是字段值&#xff0c;存储在_value字段中。field key和field value对组…

【Java 基础篇】Java可变参数:灵活处理不定数量的方法参数

在Java编程中&#xff0c;可变参数是一项强大的功能&#xff0c;它允许你编写更加灵活的方法&#xff0c;接受不定数量的参数。本文将详细解释Java可变参数的用法、语法以及最佳实践。 什么是可变参数&#xff1f; 可变参数是Java 5引入的一项功能&#xff0c;它允许你在方法…

【AIGC】提示词 Prompt 分享

提示词工程是什么&#xff1f; Prompt engineering&#xff08;提示词工程&#xff09;是指在使用语言模型进行生成性任务时&#xff0c;设计和调整输入提示&#xff08;prompts&#xff09;以改善模型生成结果的过程。它是一种优化技术&#xff0c;旨在引导模型产生更加准确、…

腾讯mini项目-【指标监控服务重构】2023-07-17

今日已办 根据导师的指导意见 修改了otelclient相关配置的代码 认真学习uptrace的文档&#xff0c;会比otel、signoz的好理解&#xff1a; 什么是OpenTelemetry https://uptrace.dev/opentelemetry/architecture.html#opentelemetry-sdk trace部分介绍 https://uptrace.dev/o…

Vue3上 使用腾讯地图 基础展示

一,注册账号 申请key值 第one步 先注册 腾讯位置服务 - 立足生态&#xff0c;连接未来 (qq.com) 第two步 注册key!!!!! 并选择开发参考的开发文档 选择类型 添加成功后会在我的应用里看到你的key值 第三步 (因为我这里是在pc端使用 就直接只用Web端文档了) 二,加载地图 …

【FPGA项目】进阶版沙盘演练——报文收发(报文处理、CDC、CRC)

前言 书接上文【FPGA项目】沙盘演练——基础版报文收发_子墨祭的博客-CSDN博客&#xff0c;前面我们做了基础版的报文收发&#xff0c;相信对逻辑设计有了一定的认知&#xff0c;在此基础上&#xff0c;继续完善一个实际报文收发可能会遇到的一些处理&#xff1a; 报文处理握手…

布隆过滤器 python3 pybloom_live使用例子 存储开销

1. 安装pybloom_live from pybloom_live import BloomFilter# 创建一个Bloom过滤器对象 # 错误率&#xff08;False Positive Rate&#xff09;在布隆过滤器中指的是&#xff0c;不存在的元素被错误地认为存在于集合中的概率 bf BloomFilter(capacity10000, error_rate0.001)#…

IntelliJ IDEA使用_常规设置

文章目录 版本说明主题设置取消检查更新依赖自动导入禁止import xxx.*、允许import内部类显示行号、方法分割线、空格代码提示&#xff08;匹配所有字母&#xff09;自定义注释颜色添加头部注释自定义字体设置字符编码关联本地GitJDK编译版本Maven配置Tomcat配置代码注释设置头…

iPhone 15秋季发布会召开,媒介盒子多家媒体持续报道

现如今互联网引流成本越来越高不说,难度越来越大,大多数都是投入巨大,收效甚微。因此,用有限的成本带来高回报的效果成为企业共同的追求。 当然,企业想要产品服务引流绝非易事。 为什么你的品牌营销不见效?新产品上市要怎么做宣传?盒子以新发布的苹果15为例分析,给你一些启…

bootstrap按钮

<!--1、可以转换成按钮的元素--> <!--可能使用 <button> 元素来获得在各个浏览器上获得相匹配的绘制效果--> <a class"btn btn-default">按钮a标签</a> <button class"btn btn-default">按钮button标…

scrapy框架学习笔记-1

前言 在现代互联网时代&#xff0c;网页数据获取和处理已经成为了重要的技能之一。无论是为了获取信息、做市场研究&#xff0c;还是进行数据分析&#xff0c;掌握网页爬取和数据处理技术都是非常有用的。本文将介绍从网页加载到数据存储的完整过程&#xff0c;包括网络请求、…

macOS Big Sur:探索新设计,聚焦新体验

自苹果公司推出macOS Big Sur以来&#xff0c;这一新版操作系统以其突破性的设计刷新了我们对Mac的认知。本文将详细介绍macOS Big Sur的各项新功能及其为用户带来的卓越体验。 安装&#xff1a;macOS Big Sur(macos11)v11.7.10正式版 一、全新设计&#xff1a;导览更轻松&am…

mysql MVCC多版本并发控制

mvcc的概念 mvcc 的实现依赖于&#xff1a; 隐藏字段 行格式&#xff08;row_id,trx_id,roll_ponter&#xff09;UndologRead view innodb 存储引擎的表来说&#xff0c;聚集索引记录中都包含两个必要的隐藏字段&#xff0c;row_id(如果没有聚集索引&#xff0c;才会创建的) …