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

2023软件测试岗必问的100个面试题【含答案】

一、测试理论

1.什么是软件测试?

答:软件测试是通过执行预定的步骤和使用指定的数据,以确定软件系统在特定条件下是否满足预期的行为。

2.测试驱动开发(TDD)是什么?

答:测试驱动开发是一种开发方法,它要求在编写代码之前编写测试用例。这些测试用例定义了应用程序应该实现的功能,并且确保所有功能都能按照预期工作。

3.什么是黑盒测试?

答:黑盒测试是一种测试方法,它基于程序外部功能或者用户需求来检测程序内部的错误。

4.什么是白盒测试?

答:白盒测试是一种测试方法,它涉及对程序源代码的测试,以检查程序是否符合设计规范、是否存在逻辑错误等。

5.什么是回归测试?

答:回归测试是针对修改后的程序进行测试,以确保更改没有不良影响并且原有功能仍然正常工作。

6.什么是性能测试?

答:性能测试是一种测试方法,它旨在评估系统在特定负载和压力下的性能和稳定性。

7.什么是自动化测试?

答:自动化测试是利用软件工具来执行测试,而不是手动执行测试。这种测试可以提高测试效率、减少错误,以及节省时间和成本。

8.什么是单元测试?

答:单元测试是针对软件系统中最小的可测试部分进行测试。它通常在开发过程中进行,并通过执行测试用例来检查代码是否达到预期。

9.什么是负载测试?

答:负载测试是一种测试方法,它模拟多个用户同时使用应用程序,以评估应用程序在高负载下的表现。

10.什么是安全测试?

答:安全测试是一种测试方法,旨在检测系统存在的安全漏洞和弱点,并帮助企业保护其数据和资产。

二、 Linux

1.Linux中如何查看系统版本信息?

答:使用命令 cat /etc/os-release 或 lsb_release -a

2.如何在Linux系统中查看CPU的使用情况?

答:使用命令 top 或 htop,这两个命令都可以查看CPU使用率和进程信息。

3.怎样列出当前目录下的所有文件和子目录?

答:使用命令 ls -R,这个命令会递归地列出当前目录下的所有文件和子目录。

4.如何查看正在运行的进程及其占用资源情况?

答:使用命令 ps aux,这个命令会列出所有正在运行的进程及其占用资源情况。

5.如何查看Linux系统的磁盘空间使用情况?

答:使用命令 df -h,这个命令会列出系统中所有挂载的磁盘分区及其空间使用情况。

6.如何查看Linux系统中的网络接口信息?

答:使用命令 ifconfig,这个命令会列出系统中所有网络接口的信息。

7.如何在Linux中创建新的用户账号?

答:使用命令 adduser,例如:sudo adduser newuser

8.如何修改Linux系统中的密码?

答:使用命令 passwd,例如:sudo passwd username

9.如何在Linux中安装软件包?

答:使用命令 apt-get install 或者 yum install,例如:sudo apt-get install nginx

10.如何在Linux中查看系统日志?

答:使用命令 tail -f /var/log/syslog 或者 journalctl -f,这两个命令都可以实时查看系统日志。

三、Python

1.Python中如何读取文件?

答:使用open()函数打开文件,使用read()readlines()方法读取文件内容。

2.Python中的列表和元组有什么区别?

答:列表是可变序列,元组是不可变序列。即可以修改列表中的元素,但不能修改元组中的元素。

3.Python中如何进行异常处理?

答:使用try...except语句块来捕获异常并处理它们。

4.如何在Python中创建虚拟环境?

答:使用virtualenvvenv模块来创建虚拟环境。

5.Python中的迭代器和生成器有什么区别?

答:迭代器是一个对象,它可以逐个返回其所包含的元素,而生成器是一种特殊的迭代器,它可以动态地生成元素。

6.如何在Python中安装第三方库?

答:使用pip命令来安装第三方库,例如:pip install requests

7.Python中的装饰器是什么?

答:装饰器是一种用于修改或扩展函数或类功能的函数或类。

8.在Python中如何实现多线程?

答:使用threading模块来创建和管理线程。

9.如何在Python中进行单元测试?

答:使用unittest模块来编写单元测试用例,并使用unittest.main()函数来执行测试用例。

10.Python中的面向对象编程有哪些特点?

答:Python中的面向对象编程具有封装、继承和多态性等特点。

四、MySQL

1.什么是MySQL?

MySQL是一个开源的关系型数据库管理系统,它能够存储和管理大量的数据,因此被广泛用于各种IT应用中。

2.MySQL的优势有哪些?

MySQL具有高可靠性、高可扩展性、高安全性等优点,同时还能够支持多种操作系统和编程语言,如Linux、Java、Python等。

3.什么是索引?

索引是一种用于加速数据库查询操作的数据结构,它可以快速地定位到某个特定的行或列,从而提高查询的效率。

4.MySQL中有哪些常见的索引类型?

MySQL中常见的索引类型包括主键索引、唯一索引、普通索引、全文索引等。

5.什么是主键?

主键是一列或一组列,其值可以唯一地标识表中的每条记录。在MySQL中,主键通常被用作检索时的条件。

6.主键和唯一索引有何区别?

主键是一种特殊的唯一索引,其值不能为空,并且一张表只能有一个主键。而唯一索引可以有多个,并且其值可以为空。

7.如何创建一个新的数据库?

可以使用MySQL的CREATE DATABASE语句来创建一个新的数据库。例如:

CREATE DATABASE mydatabase;

8.如何创建一个新的表?

可以使用MySQL的CREATE TABLE语句来创建一个新的表。例如:

CREATE TABLE mytable (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
age INT,
PRIMARY KEY (id)
);

9.如何查询数据?

可以使用MySQL的SELECT语句来查询数据。例如:

SELECT * FROM mytable WHERE age > 18;

10.如何更新数据?

可以使用MySQL的UPDATE语句来更新数据。例如:

UPDATE mytable SET age = 20 WHERE name = 'John';

五、Web

1.什么是Web应用程序?

答:Web应用程序是指基于Web技术构建的应用软件,它们使用HTML、CSS、JavaScript等Web标准来设计和开发。

2.什么是Web自动化测试?

答:Web自动化测试是一种测试技术,可以在浏览器中自动执行一些任务,例如单击按钮、填写表单等。这种测试方法通常使用工具来模拟用户的操作,并验证应用程序是否按照预期的方式运行。

3.你如何确保Web应用程序的性能?

答:要确保Web应用程序的性能,可以使用性能测试工具来模拟多种用户负载,并对应用程序进行测试。还可以对代码进行优化,以减少响应时间和网络传输时间。

4.你如何保护Web应用程序安全性?

答:为了保护Web应用程序的安全性,可以采取多种措施,例如检查输入参数、使用密码加密、启用SSL证书、限制访问等。

5.什么是Web漏洞?

答:Web漏洞是指应用程序中的安全漏洞,可以被黑客利用来入侵系统或盗取敏感数据。常见的Web漏洞包括SQL注入、跨站脚本攻击和文件包含漏洞等。

6.如何避免Web应用程序的漏洞?

答:为了避免Web应用程序的漏洞,可以采取多种措施,例如使用最新版本的框架和库、验证用户输入、过滤输出、禁止不必要的功能等。

7.你如何对Web应用程序进行跨浏览器测试?

答:为了对Web应用程序进行跨浏览器测试,可以使用多个浏览器来测试应用程序,并检查其在每个浏览器中的运行情况。还可以使用自动化测试工具来模拟不同浏览器的用户行为。

8.如何处理Web应用程序的错误和异常?

答:为了处理Web应用程序的错误和异常,可以使用日志记录工具来记录所有的错误和异常,并及时修复它们。还可以使用监视工具来实时监视应用程序并发现潜在的问题。

9.什么是Web服务?

答:Web服务是一种API,可以通过标准的Web技术(如HTTP)进行访问。Web服务通常使用SOAP或REST协议来定义其接口。

10.你如何对Web服务进行测试?

答:为了对Web服务进行测试,可以使用自动化测试工具来发送各种请求,并验证服务是否按照预期的方式响应。还可以使用模拟工具来模拟Web服务,并测试客户端应用程序的行为。

六、接口测试

1.什么是接口测试?

答:接口测试是一种软件测试方法,用于验证不同应用程序之间的接口是否按照规范进行通信,并确保系统的各个部分之间的正确交互。

2.你如何设计一个好的接口测试计划?

答:要设计一个好的接口测试计划,需要明确接口的功能和目的、定义测试的边界条件、选择适当的测试工具、制定测试用例并执行测试,最后对测试结果进行评估和报告。

3.接口测试中常用的协议有哪些?

答:接口测试中常用的协议有HTTP、SOAP、REST、XML-RPC、JSON-RPC等。

4.你如何模拟一个API接口?

答:为了模拟一个API接口,可以使用模拟服务器或框架来生成虚拟数据,以便进行测试。还可以使用模拟工具来模拟不同请求和响应,并检查其是否按照预期的方式运行。

5.你如何检查API的安全性?

答:要检查API的安全性,可以采取多种措施,例如输入验证、输出过滤、密码加密、访问控制等。此外,可以使用熟悉的安全测试工具,例如Burp Suite和OWASP ZAP来发现潜在的漏洞。

6.接口测试中,哪些方面需要特别关注?

答:接口测试中需要特别关注数据格式、参数验证、响应时间、错误处理和系统性能等方面。

7.你如何对接口进行性能测试?

答:为了对接口进行性能测试,可以使用负载测试工具来模拟多种请求,并检查其响应时间和吞吐量。还可以使用监视工具来实时监测系统的性能指标。

8.你如何处理接口测试中的异常情况?

答:为了处理接口测试中的异常情况,可以编写适当的错误处理代码,并在日志中记录所有的错误和异常。此外,需要及时修复错误和异常,并对所有失败的测试用例进行彻底的调试和重现。

9.什么是Mock服务?

答:Mock服务是一种用于模拟API接口的服务,可以模拟不同类型的请求和响应,并对接口进行测试。Mock服务通常用于早期开发阶段或测试环境中进行测试,以便减少对真实服务器的依赖。

10.如何评估接口测试结果?

答:为了评估接口测试结果,可以根据测试计划和测试用例的要求来分析测试结果。需要确保所有测试用例均已通过,且测试覆盖率达到预期水平。还需要检查测试报告并进行必要的完善和优化。

七、性能测试

1.什么是性能测试?

答:性能测试是一种测试方法,用于评估系统的性能和可靠性,并确定系统是否能够在压力下正常工作。

2.性能测试中常用的指标有哪些?

答:性能测试中常用的指标包括响应时间、吞吐量、并发用户数、事务处理率、资源利用率等。

3.性能测试中有哪些类型?

答:性能测试中常见的类型包括负载测试、压力测试、稳定性测试、容量测试等。

4.你如何设置一个好的性能测试计划?

答:要设置一个好的性能测试计划,需要明确测试的目的和范围、制定测试场景和负载、选择适当的工具和技术、定义测试报告,并安排测试资源和时间表。

5.性能测试中使用的工具有哪些?

答:性能测试中使用的工具包括Apache JMeter、LoadRunner、Gatling、Tsung、WebLOAD等。

6.如何模拟多个并发用户?

答:为了模拟多个并发用户,可以使用负载测试工具来生成虚拟用户,并模拟它们在相同或不同的时间内执行不同的操作。

7.如何评估系统的容量?

答:为了评估系统的容量,可以进行容量测试,并确定系统在最大负载下的性能和可靠性。在测试期间,需要监测服务器资源利用率,并记录系统响应时间和吞吐量等指标。

8.性能测试中你如何处理异常情况?

答:为了处理异常情况,可以编写适当的错误处理代码,并在日志中记录所有的错误和异常。此外,需要及时修复错误和异常,并对所有失败的测试用例进行彻底的调试和重现。

9.如何评估性能测试结果?

答:为了评估性能测试结果,可以根据测试计划和测试用例的要求来分析测试结果。需要确保系统在不同负载下稳定工作,并满足预期的响应时间和吞吐量。还需要检查测试报告并进行必要的完善和优化。

10.性能测试中常见的风险有哪些?

答:性能测试中常见的风险包括测试数据不准确、测试环境不真实、测试场景不充分、负载模型不准确、测试工具配置不正确等。这些风险可能导致测试结果不准确或无法满足需求。

八、selenium

1.什么是Selenium?

Selenium是一款自动化测试工具,支持多种编程语言(如Java、Python等),可以模拟用户行为来进行功能测试、回归测试等。

2.Selenium有哪些组件?

Selenium组件包括:WebDriver、IDE、Grid。

3.WebDriver和IDE的区别是什么?

WebDriver是一款功能强大的自动化测试工具,可通过编写脚本实现各种复杂的测试场景;而IDE则是一个浏览器插件,提供记录和播放测试脚本的功能。

4.如何在Selenium中使用定位元素?

可以使用xpath、css selector、id、name、class name等方式来定位元素,例如driver.findElement(By.xpath(“//input[@name='username']”))。

5.什么是隐式等待和显式等待?

隐式等待是指在查找元素时,如果找不到元素则等待一定时间再次查找;显式等待是指在代码中设置等待条件,直到满足条件或者超时后再执行下一步操作。

6.如何处理弹窗?

可以使用Alert类来处理弹窗,例如driver.switchTo().alert().accept()接受弹窗,driver.switchTo().alert().dismiss()关闭弹窗。

7.如何模拟鼠标键盘操作?

可以使用Actions类来模拟鼠标键盘操作,例如actions.moveToElement(element).click().perform()模拟鼠标移动和点击。

8.如何截图?

可以使用getScreenshotAs方法来进行截图,例如File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE)。

9.如何执行JavaScript?

可以使用executeScript方法来执行JavaScript,例如driver.executeScript("window.scrollTo(0,document.body.scrollHeight)")滚动到页面底部。

10.如何处理多窗口?

可以使用getWindowHandles方法获取所有窗口句柄,然后使用switchTo方法切换到指定窗口,例如driver.switchTo().window(handle)。

九、计算机与网络

1.什么是Socket?

Socket是一种抽象概念,表示两台计算机之间的通信端点。在网络编程中,Socket主要用于实现不同进程之间的通信。

2.计算机网络中,TCP和UDP有什么区别?

TCP(传输控制协议)和UDP(用户数据报协议)都是常用的传输层协议,TCP提供可靠的、面向连接的服务,而UDP提供不可靠的、无连接的服务。

3.什么是HTTP协议?

HTTP(超文本传输协议)是一种应用层协议,用于在Web浏览器和Web服务器之间进行通信,支持客户端向服务器请求数据、服务器向客户端返回数据等操作。

4.什么是DNS?

DNS(域名系统)是一种将域名与IP地址相互映射的分布式数据库,用于解析域名到IP地址。

5.什么是防火墙?

防火墙是一种网络安全设备,用于保护网络免受未经授权的访问和攻击。它可以根据预设规则过滤流量,防止入侵和恶意软件攻击。

6.什么是VPN?

VPN(虚拟专用网络)是一种通过公共网络建立私人网络连接的技术,可用于保护数据传输的安全性和隐私性。

7.如何排除网络故障?

可以通过以下步骤来排除网络故障:检查网络连接、检查硬件设备、检查网络配置、检查DNS设置等。

8.什么是DDoS攻击?

DDoS(分布式拒绝服务)攻击是一种通过向目标主机发送大量流量来使其瘫痪的攻击方式。攻击者利用多个计算机作为“僵尸”,向目标发起攻击,从而造成网络堵塞。

9.如何保护网络安全?

可以采取以下措施来保护网络安全:使用防火墙、加密通信、定期更新操作系统和应用程序、限制访问权限等。

10.什么是SSL证书?

SSL(安全套接层)证书是一种公钥证书,用于验证Web服务器和客户端之间的身份,并确保通信过程中的数据安全。

十、人力资源

1.什么是软件测试?

答:软件测试是一种评估软件质量的过程。它通过对软件系统进行分析、设计、实施和验证来检查其符合规范、满足需求,并且能够满足用户期望。

2.请谈一谈您的测试经验?

答:我有多年的软件测试经验,曾经参与过各种类型的项目,包括Web应用程序、移动应用程序、桌面应用程序等。我的工作内容涉及需求分析、测试计划制定、测试案例编写、测试执行、问题跟踪和报告编写。

3.您如何规划测试任务?

答:我会首先进行需求分析和测试计划制定。在测试计划中,我会制定测试目标、测试环境、测试时间、测试资源等方面的细节,并确定测试策略、测试方法以及需要使用的测试工具和技术。

4.您如何保证测试用例的完整性?

答:我会采用多种途径来确保测试用例的完整性,比如对需求文档进行详细分析,将测试用例覆盖到所有需求点上;参考业界最佳实践或者行业标准,编写通用测试用例模板,提高测试用例编写效率同时保证全面性;定期与开发人员和需求分析师沟通,了解项目的更新,并相应地更新测试用例。

5.什么是回归测试?您如何进行回归测试?

答:回归测试是一种测试方法,它检查已修复缺陷后软件系统的功能是否受到影响。我会在每次开发周期结束后进行回归测试,用于确保新功能的添加或修改不会破坏现有功能。我通常会对核心业务流程进行测试,以验证修改后的代码是否符合预期。

6.您如何衡量软件质量?

答:我认为,软件质量可以从多个角度来衡量,包括可靠性、性能、易用性、兼容性、安全性等方面。我会根据项目的特点,从这些方面去思考并设计测试计划,以保证软件质量。

7.您如何管理测试数据?

答:测试数据是测试中非常重要的一部分,我会使用专门的工具来管理测试数据,比如Excel、数据库、测试管理工具等。我会将测试数据按照模块划分、按照版本区分、按照测试类型进行存储,以便日后的测试工作。

8.您如何处理测试过程中发现的问题?

答:在测试过程中,如果发现了问题,我会及时记录,并尽快向开发人员汇报问题。同时,我会跟进问题的解决情况,并进行验证,确保问题得到解决。如果问题严重影响了软件的功能,我会推迟发布日期并通知相关方。

9.您如何管理测试团队?

答:我会对测试团队成员进行合理分配工作,并安排培训和学习计划以提高团队技能水平。在测试过程中,我会与团队成员密切合作,协作完成测试任务。我也会定期进行绩效评估和激励措施以鼓励团队成员参与项目工作。

10.您如何提高测试效率和质量?

答:我会使用自动化测试工具、测试框架等技术

既然看到这里,在收藏的同时,也请不吝啬的点个赞呗!期待 ~

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

 

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取   

 

相关文章:

2023软件测试岗必问的100个面试题【含答案】

一、测试理论 1.什么是软件测试? 答:软件测试是通过执行预定的步骤和使用指定的数据,以确定软件系统在特定条件下是否满足预期的行为。 2.测试驱动开发(TDD)是什么? 答:测试驱动开发是一种开…...

MediaExtractor MediaCodec手动解码播放音乐

MediaExtractor MediaCodec手动解码播放音乐,笔记 private class DecodeAudio implements Runnable {Overridepublic void run() {//开始播放pcmaudioTrack.play();MediaExtractor extractor null;MediaCodec codec null;Log.i(TAG, "run: init");FileOutputStrea…...

element表格+表单+表单验证结合运用

目录​​​​​​​ 一、结果展示 二、实现代码 一、结果展示 1、图片 2、描述 table中放form表单,放输入框或下拉框或多选框等; 点击添加按钮,首先验证表单,如果存在没填的就验证提醒,都填了就向下添加一行表单表…...

亚马逊云科技发布Amazon HealthScribe,使用生成式AI技术实现临床文档的自动生成

近日,亚马逊云科技在纽约峰会上推出了Amazon HealthScribe,该服务符合HIPAA(《健康保险流通与责任法案》)的相关要求,可为医疗软件供应商提供一种基于语音和文字识别的生成式AI技术,帮助其创建能够自动生成…...

Windows11安装Linux子系统,并实现服务自启动,局域网访问,磁盘挂载

Windows11安装Linux子系统,并实现服务自启动,局域网访问,磁盘挂载 一、准备工作二、安装Linux子系统(wsl2)三、为Linux子系统设置桥接网络检查wsl版本在 Hyper-V 管理器中创建虚拟交换机创建 WSL 配置文件启动wsl 四、设置Windows开机自启动L…...

【Git】保姆级详解:Git配置SSH Key(密钥和公钥)到github

博主简介:22级计算机科学与技术本科生一枚🌸博主主页:是瑶瑶子啦每日一言🌼: “当人们做不到一些事情的时候,他们会对你说你也同样不能。”——《当幸福来敲门》 克里斯加德纳 Git配置SSH Key 一、什么是Git?二、什么…...

离线环境conda虚拟环境备份迁移--conda pack问题

1.第一步:创建虚拟环境 conda create -n pyenv --clone base 或者 conda create -n pyenv python3.8.5 --offline 命令执行结束,在路径/xxxx/anaconda/envs 下看到pyenv 或者 conda info --envs 查看罗列虚拟环境 2.第二步:打包环境 conda …...

挂载 IK 分词器至 Elasticsearch Docker 容器 - Docker Docker Compose 教程

简介 本博客将讲解如何在 Docker 和 Docker-Compose 中运行 Elasticsearch,并挂载 IK 分词器。 步骤 一、快速运行Elasticsearch:8.1.3 1.首先,我们需要创建一个新的 Docker 网络:"elastic"。这个网络会提供给我们接下来所要创…...

7.6 通俗易懂解读残差网络ResNet 手撕ResNet

一.举例通俗解释ResNet思想 假设你正在学习如何骑自行车,并且想要骑到一个遥远的目的地。你可以选择直接骑到目的地,也可以选择在途中设置几个“中转站”,每个中转站都会告诉你如何朝着目的地前进。 在传统的神经网络中,就好比只…...

robotframework+selenium 进行webui页面自动化测试

robotframework其实就是一个自动化的框架,想要进行什么样的自动化测试,就需要在这框架上添加相应的库文件,而用于webui页面自动化测试的就是selenium库. 关于robotframework框架的搭建我这里就不说了,今天就给大家根据一个登录的实…...

手机突然无法获取ip地址

在日常生活中,我们对手机的依赖越来越大,尤其是在联网方面。然而,有时候我们可能会遇到手机无法获取IP地址的问题,这给我们的正常使用带来了很多不便。当我们的手机无法获得IP地址时,我们将无法连接到互联网或局域网&a…...

C++——关于命名空间

写c项目时,大家常用到的一句话就是: using namespace std; 怎么具体解析这句话呢? 命名冲突: 在c语言中,我们有变量的命名规范,如果一个变量名或者函数名和某个库里面自带的库函数或者某个关键字重名&…...

怎么进行流程图制作?用这个工具制作很方便

怎么进行流程图制作?流程图是一种非常有用的工具,可以帮助我们更好地理解和展示各种复杂的业务流程和工作流程。它可以将复杂的过程简化为易于理解的图形和文本,使得人们更容易理解和跟踪整个流程。因此,制作流程图是在日常工作中…...

【ChatGPT 指令大全】怎么使用ChatGPT来辅助学习英语

在当今全球化的社会中,英语已成为一门世界性的语言,掌握良好的英语技能对个人和职业发展至关重要。而借助人工智能的力量,ChatGPT为学习者提供了一个有价值的工具,可以在学习过程中提供即时的帮助和反馈。在本文中,我们…...

Ubuntu20配置仅主机网络

Ubuntu20配置仅主机网络,使虚拟机与物理机网络联通且配置固定IP 进入终端:vim /etc/netplan/01-network-manager-all.yaml 修改为: network:ethernets:enp0s8:addresses: [192.168.138.108/24]dhcp4: false optional: truegateway4: 192.…...

调整奇数偶数顺序

调整数组使奇数全部都位于偶数前面。 题目: 输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。 思路: 1. 给定两个下标left和right&#…...

日志的规范

确定日志级别: 确保你的系统有一个明确的日志级别策略。通常,日志级别包括DEBUG,INFO,WARN,ERROR和FATAL。DEBUG级别的日志记录所有详细信息,适用于开发和调试环境。INFO级别的日志记录常规操作信息&#x…...

Spring AOP(AOP概念,组成成分,实现,原理)

目录 1. 什么是Spring AOP? 2. 为什么要用AOP? 3. AOP该怎么学习? 3.1 AOP的组成 (1)切面(Aspect) (2)连接点(join point) (3&a…...

Android WebView简单应用:构建内嵌网页浏览功能

在现代移动应用开发中,内嵌网页浏览功能是许多应用程序的常见需求。Android平台提供了WebView组件,它允许开发者将网页内容嵌入到应用中,并提供了丰富的功能和定制选项。本文将介绍如何在Android应用中使用WebView组件,帮助您快速…...

并发——乐观锁常见的两种实现方式,乐观锁的缺点

文章目录 乐观锁常见的两种实现方式1. 版本号机制2. CAS算法 乐观锁的缺点1 ABA 问题2 循环时间长开销大3 只能保证一个共享变量的原子操作 乐观锁常见的两种实现方式 乐观锁一般会使用版本号机制或CAS算法实现。 1. 版本号机制 一般是在数据表中加上一个数据版本号version字段…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

OpenLayers 可视化之热力图

注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存

文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖

在Vuzix M400 AR智能眼镜的助力下&#xff0c;卢森堡罗伯特舒曼医院&#xff08;the Robert Schuman Hospitals, HRS&#xff09;凭借在无菌制剂生产流程中引入增强现实技术&#xff08;AR&#xff09;创新项目&#xff0c;荣获了2024年6月7日由卢森堡医院药剂师协会&#xff0…...

第7篇:中间件全链路监控与 SQL 性能分析实践

7.1 章节导读 在构建数据库中间件的过程中&#xff0c;可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中&#xff0c;必须做到&#xff1a; &#x1f50d; 追踪每一条 SQL 的生命周期&#xff08;从入口到数据库执行&#xff09;&#…...