- 博客(292)
- 资源 (3)
- 收藏
- 关注
原创 【读书笔记】缺爱者的自我修养-认知偏差如何影响我们的情绪与行为
错误的认知给你带来了糟糕的情绪,情绪刺激行为,行为强化认知,三者相互作用,形成了循环往复的恶性怪圈。找到问题的核心,就能对症下药。只要你能回到源头修正错误的认知,就一定能走出失恋,而且你还会从中重建全新的自我。
2025-02-20 10:07:17
1348
原创 【Python】为何DeepSeek-R1 是AI发展的新风口?试试Ollama在本地私有化部署一个就知道了
最近国产大模型 DeepSeek 非常火,但由于访问人数过多经常频繁出现反应迟缓甚至是宕机的情况。但万幸的是,DeepSeek 是一个开源模型,我们可以通过本地部署在自己的终端上随时使用,而且部署到本地后无需联网即可直接使用。
2025-02-14 13:54:54
814
原创 【Java工具类】使用这3种原生方式可以轻松构建Java树形结构数据
在Java中构建树形结构可以使用递归方式,通常会有一个节点类和一个构建树的类 在开发的过程中很多业务场景需要一个树形结构的结果集进行前端展示,比如菜单结构、部门列表、文件结构等,也可以理解为是一个无限父子结构。
2025-01-07 10:53:38
334
原创 【个人质量提高指南】健身篇—练前和练后训练餐的误区大揭秘,你真的吃对了吗?
健身圈有句老话说得好:`三分练七分吃` 。可见饮食对于我们健身的人有多重要,**个人认为最重要的就是练前餐和练后餐了**,这两餐不仅为我们的`训练提供能量,还负责着我们训练后的恢复`,贯穿整个训练过程。所以本文会就`练前练后餐进行一个分享`。
2024-12-04 16:45:28
488
原创 【Python】高效的Web自动化测试利器—Python+Playwright快速上手自动化实战指南
**Playwright是微软在` 2020 年初 `开源自动化测试工具,功能和 selenium 类似,都可以驱动浏览器进行各种自动化操作。**- 支持主流浏览器,如Chrome、Firefox、Safari 等,同时支持以**无头模式、有头模式**运行,并提供了**同步、异步的 API**,可以结合 `主流测试框架`使用,并且支持浏览器端的自动化脚本录制等功能。**特点:**- 跨浏览器:Playwright 支持所有现代渲染引擎,包括Chromium、WebKit 和 Firefox;- 跨
2024-08-16 14:43:42
4659
1
原创 【Python】自动化神器PyAutoGUI —告别手动操作,一键模拟鼠标键盘,玩转微信及各种软件自动化
PyAutoGUI 是一个 Python 库,主要用于 GUI(图形用户界面)自动化。它允许你通过编程方式控制鼠标和键盘,模拟人类操作,如移动鼠标、点击鼠标按钮、滚动鼠标滚轮、键入键盘按键等。这使得 PyAutoGUI 成为自动化重复性 GUI 任务的强大工具,比如自动化测试、批量处理文件、游戏脚本编写等场景。
2024-07-24 17:14:06
3773
2
原创 【Linux】网络故障排查必备—tcpdump如何优雅地捕获并分析数据包
tcpdump还能与其他图形工具一起配合分析,比如 wireshark、Snort 等。tcpdump不指定任何参数,监听第一块网卡上经过的数据包。指定查看eth0 网卡 的所有包 然后写入文件。(这里的eth0网卡是有数据流量)(这里的eth0网卡是有数据流量)捕获源IP或目标IP的数据包。捕获源IP和目标IP的数据包。第二行显示网卡的网络信息。将捕获的数据包保存到文件。捕获并显示更详细的信息。第一部分的第一行显示。捕获所有接口的数据包。捕获特定接口的数据包。捕获指定数量的数据包。
2024-07-17 17:43:34
1889
原创 【Python】AI赋能自动化测试—Applitools Eyes让视觉检查自动化测试更智能、更高效
视觉回归测试(Visual Regression Testing)是一种软件测试技术,通过捕获网页的屏幕截图或图像,并将其与基准图像进行比较,以检测变化。用来识别由代码更改或升级引起的视觉回归Test results 测试结果Tests requiring attention 需要关注的测试Apps & tests 应用程序与测试Branch baselines 分支基线Environments 环境Compare & merge branches 比较与合并分支Insights 洞察。
2024-07-16 17:29:39
2250
原创 【Python】图像识别—Tesseract在OCR中的深度应用,使用一行代码构建你的首个验证码识别器
- Python的Tesseract是一个`开源`的OCR(Optical Character Recognition,光学字符识别)引擎,,能识别100多种语言,专门用于对图片文字进行识别,并获取文本。`但是它的缺点是对手写的识别能力比较差。 ` - 基于**Google**的`Tesseract OCR`引擎,并提供了Python的接口,使得在Python环境中使用OCR变的超级简单- 与 **Microsoft Office Document Imaging(MODI)** 相比,我们可以`不
2024-07-12 17:11:32
445
原创 【Js】揭秘网页数据存储三大法宝:Cookie、LocalStorage与SessionStorage的深入解析与比较!
而 sessionStorage 是一个前端的概念,它只是可以将一部分数据在当前会话中保存下来,刷新页面数据依旧存在。需要注意的是,不是什么数据都适合放在 Cookie、localStorage 和 sessionStorage 中的。,比如你登录某个网站市场可以看到“记住密码”,这通常就是通过在 Cookie 中存入一段辨别用户身份的数据来实现的。sessionStorage 与 localStorage 的接口类似,但保存数据的。因为只要打开控制台,你就随意修改它们的值,也就是说如果你的网站中有。
2024-06-06 14:47:38
1149
原创 【个人质量提高指南】红酒篇|品酒新手必读:一文学会如何品酒解锁干、半干、半甜、甜型葡萄酒的味觉密码!
其实,对于普通消费者而言,一款葡萄酒究竟含有多少克糖分并不重要(除非减肥者想严格控制卡路里的摄入),我们只需要大致知道`葡萄酒是干型还是甜型就可以了。葡萄酒品鉴除了红酒的品质之外,葡萄酒杯🍷也是品酒过程中不能忽视的一环。当然,有时候干型葡萄酒的口感也受其它因素的影响。葡萄酒是用葡萄酿成,而葡萄本身是含有糖分的。对于那些既可能酿成干型,也可能酿成甜型的品种来说,一般通。,在欧盟标准中,起泡酒有另外一套适用的准则。在喝葡萄酒之前,我们都习惯先去闻酒的香气,有时候。,不过并不能说酒精度高就不是甜酒,常见的。
2024-05-31 16:37:38
2107
原创 【个人质量提高指南】香水篇|型男必修:探索香水世界的无尽魅力、解锁你的专属魅力密码!
男士香水,品位的细节:一瓶香水,不仅是香氛的绽放,更是男士品位的无声宣言。它能在瞬间提升你的魅力,让你在人群中脱颖而出。男士喷香水,是精致生活的象征,是自信与优雅的体现。无需多言,只需轻轻一喷,即可展现你独特的男性魅力。香水,不仅是味道,更是你独特的标签,让每一次出场都充满惊喜。
2024-05-20 17:35:25
2063
原创 【SpringBoot】Redis Lua脚本实战指南:简单高效的构建分布式多命令原子操作、分布式锁
- **轻量级**: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。- 可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。- **数据类型丰富**,包括`数字、字符串、布尔值、表(数组和字典的集合)等`。这些数据类型使得Lua语言能够处理各种复杂的数据结构和算法。- 支持面向过程(procedure-oriented)编程和函数式编程(functional progra
2024-05-11 15:52:23
1326
1
原创 【项目实战】 零基础也能做!Hexo携手GitHub Pages,10分钟内搭建一个炫酷的个人博客网站!
Github Pages 是一个免费的静态网页托管服务,可以托管博客、项目官网等静态网页。目前 Gitee Pages 支持 Jekyll、Hugo、Hexo编译静态资源。编译 Hexo 依据:仓库编译目录下存在 package.json、_config.yml文件和 scaffolds 目录时,会使用hexo generate生成静态文件。由于每次部署需要重新克隆代码、执行 npm install 以及编译,部署时间相对于 Hugo 和 Jekyll 会长一些。编译 Hugo 依据:仓库编译目录下存
2024-05-10 15:57:07
829
原创 【SpringBoot】解锁后端测试新境界:学习Mockito与MockMvc的单元测试魔法
**所谓的mock就是创建一个`类的虚拟对象`,在测试环境中,`用来替换掉真实的对象`,以达到2个目的:** - 验证这个对象的某些方法的调用情况,调用了多少次,参数是什么等等 - 指定这个对象的某些方法的行为,返回特定的值,或者是执行特定的动作
2024-05-08 14:46:17
1120
原创 【BurpSuite】手把手教你:用BurpSuite发起震撼的中间人攻击,了解网络劫持的黑暗面
默认情况下,当你通过Burp去访问一个HTTPS的网站时,代理为每个主机生成一个TLS证书,由其自己的证书颁发机构(CA)进行证书签名。此CA证书是第一次运行Burp时生成的,并存储在本地。要在访问HTTPS网站上最有效地使用Burp代理,`您需要在浏览器中安装Burp的CA证书作为可信根证书。`否则,就会出现类似如下图的情况:
2024-03-25 17:09:26
1808
原创 【Java基础】了解Java安全体系JCA,使用BouncyCastle的ED25519算法生成密钥对、数据签名
- 通过JCA统一的、可扩展的一套`用于实现加密服务的基础功能基础API`,,打包成一个`Provider服务( 安全提供者),也就是一个实现JCA标准的jar包` , **可以动态地加载到Java运行环境中。** - 而开发者在使用只需根据JCA框架提供的`统一接口来调用各种第三方服务商加密算法`、密钥管理等功能,而无需关心底层的实现细节
2024-03-22 11:31:39
2449
3
原创 【Maven】使用maven-jar、maven-assembly、maven-shade优雅的实现第三方依赖一同打Jar包
- **maven-jar-plugin** maven 默认打包插件【springboot默认使用该方式打包】,用来创建` project jar`- **maven-shade-plugin** 用来打可执行包,executable(fat) jar- **maven-assembly-plugin** 支持`定制化打包方式`,例如 apache 项目的打包方式
2024-03-20 16:48:51
2519
原创 【Jvm】看懂字节码指令,了解JVM解析和执行Java代码的过程,对并发编程很有好处
JVM字节码指令是Java虚拟机在执行Java程序时所遵循的一种低级指令集。在.java源文件为.class字节码文件后,存储在字节码文件中的就是这些`字节码指令。该指令在Java虚拟机上运行的,与具体的操作系统和硬件无关,实现了Java语言的“一次编译,到处运行”的特性。一般情况下,Java开发者不需要直接与这些指令打交道,因为它们是由Java编译器自动生成的。但在某些高级场景,如类加载器、字节码操作库(如ASM、Javassist)等中,了解这些指令是非常有用的。
2024-03-01 11:40:03
1139
原创 【Python】记录生产编程小tips(字符串处理、列表删除、字典、csv、excel操作)持续更新
如果 key 不在字典中,则插入 key 及设置的默认值 default,并返回 default ,default 默认值为 None。倒叙遍历,删除某个元素后,后面元素向前顶替位置,后面的元素是已经check过的,所以不会导致元素遗漏问题。python 使用for循环删除列表元素,容易出现结果与期望不一致问题。pop方法:是删除第一个或者是指定删除元素的下标。可以删除指定下标的元素,删除指定下标范围内的多个元素,删除整个对象。remove方法:直接指定要删除的元素值,删除首个匹配的值。
2024-02-26 17:04:09
522
原创 【SpringBoot】一文教会你使用mybaitsPlus进行面向生产开发
MyBatis-Plus (opens new window)(简称 MP)是一个MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
2024-02-20 15:41:30
1086
原创 【Jvm】走进JVM运行时数据区域(Runtime Data Area):一次深入浅出的探索之旅
Jvm由4个部分组成,分为2个子系统和2个组件,2个子系统为Class loader(类装载)、Execution engine(执行引擎);2个组件为Runtime Data Area(运行时数据区)、Native Interface(本地接口)。Class loader(类加载器):根据给定的全限定名类名(如:Java.lang.Object)来装载class文件到Runtime data area中的method area。Runtime Data Area(运行时数据区域)
2024-02-18 16:23:47
1474
2
原创 【Jvm】性能调优(拓展)Jprofiler如何监控和解决死锁、内存泄露问题
Jprofilers是针对Java开发的性能分析工具可以对Java程序的内存,CPU,线程,GC,锁等进行监控和分析如果没有Jprofiler这类工具, 在生产环境发生内存泄漏, 去一行一行review所有代码是不现实的, 通过此工具我们可以在较短的时间内定位到导致内存泄漏出现的代码位置, 然后review该位置的代码即可.内存泄漏的难的主要是定位, 解决起来一般比较简单,重启生产环境应用,让服务恢复正常, 然后在把导致内存泄漏的代码优化(
2024-02-18 11:28:44
2001
原创 【Jvm】类加载机制原理、优化与实战大起底(Class Loading Mechanism):原来还可以这样玩!
**JVM 的类加载器具有父子关系**,双亲委派机制是在`Java 1.2`后引入的,其工作原理的是 **,如果一个类加载器收到了类加载请求,它并不会自己先去加载,而是把这个请求委托给父类的加载器去执行,如果父类加载器还存在其父类加载器,则进一步向上委托,依次递归,请求最终将到达顶层的启动类加载器(Bootstrap Class Loader),如果启动类加载器可以完成类加载任务,就成功返回,否则就一层一层向下委派子加载器去尝试加载**,这就是`双亲委派模式`,即`每个儿子都很懒,每次有活就丢给父亲去干,
2024-02-18 11:26:38
1560
2
原创 【Jvm】性能调优(下)线上问题排查思路汇总
【Jvm】性能调优(上)线上问题排查工具汇总1.合理地配置JVM的运行内存空间 2.使用合适的垃圾回收器。内存空间的分配设置:JVM 内存分配不合理最直接的表现就是频繁 GC,这会导致上下文切换(STW)等性能问题,从而降低系统的吞吐量、增加系统的响应时间。调整堆内存空间减少 Full GC、调整年轻代减少 MinorGC、设置合理的 Eden 和 Survivor 区的比例。选择合适的垃圾回收器:GC主要指堆对象和方法区(元空间)只不过废弃常量和无用的类的回收。对于系统响应时间优先的程序可以选择。
2024-02-18 11:24:37
1473
原创 【Jvm】性能调优(中)Java中不得不了解的OOM Error
**在Java中内存相关的问题主要有2种**- **内存泄露 (Memory Leak)**:**申请了内存,但是`没有释放`,导致内存空间浪费**。通俗说法就是`有人占着茅坑不拉屎`。 - **`即应该被GC对象没有被回收`**。通过 JDK的` Jvisualvm 工具`导入`堆快照dump文件`进行分析。- **内存溢出(Out Of Memory)** **申请内存时,JVM没有足够的内存空间**。通俗说法就是`去蹲坑发现坑位满了`。 - **`即内存中的对象确实都是必须存活的`** ,
2024-02-18 11:17:01
912
原创 【Jvm】性能调优(上)线上问题排查工具汇总
- **CPU利用率**:显示的是程序在运行期间实时`占用的CPU百分比`- **CPU负载**:显示的是`一段时间内正在使用和等待使用CPU的平均任务数`。**CPU利用率高,并不意味着负载就一定大**。 - 举例:有个程序需要一直使用CPU的运算功能,那么此时CPU的使用率可能达到100%,但是CPU的工作负载则是`趋近于“1”`,因为`CPU仅负责一个工作嘛`!如果同时执行这样的程序`两个`呢?**CPU的使用率还是100%,但是工作负载则变成2了。所以也就是说,`当CPU的工作负载越大`,代表
2024-02-18 10:52:08
1745
原创 【Java基础】JVM关闭回调函数(ShutdownHook)的应用场景
ShutdownHook就是一个简单的 已初始化 但是 未启动的 线程。当虚拟机开始关闭时,它将会调用所有已注册ShutdownHook的回调函数,这些回调函数执行是并发的,执行顺序是不确定的。作用:JVM退出时执行的业务逻辑(注意:ShutdownHook方法参数必须是Thread的子类,由此得知,ShutdownHook是异步执行的。添加移除需要注意的是,在ShutdownHook里执行的操作应当是不太耗时的。
2024-01-25 17:52:12
1356
原创 【Python】如何在服务器上优雅的部署Python项目(Linux/Windows/Mac)
**一般每个不同的项目都会依赖各自的库,有些库的版本不一样会引起冲突,为了解决这个问题,需要使用`虚拟环境`,Python可以在`每个项目目录下创建各自的虚拟环境`,`项目所依赖的包就在当前目录环境下`,这样避免了`库版本的冲突`,也方便相同操作系统间可以快速的拷贝项目运行。**
2024-01-24 16:13:33
5033
原创 【Java开发工具】windows和mac多版本JDK 安装指南:让你在开发中轻松应对不同版本需求
在系统变量中新增三个系统变量分别指向Java8的安装路径,Java17的安装路径以及一个动态的 JAVA_HOME 。一般而言,我们电脑上只安装一个版本的jdk时,我们只需要在 JAVA_HOME 中填入对应版本的Java安装路径即可。然后我们使用path变量,引用JAVA_HOME指定对应的bin路径。当我们采用动态的JAVA_HOME 时,才是将之前单版本的Java路径当作一个变量,比如Java8的安装路径叫JAVA8_HOME,Java17的安装路径叫做JAVA17_HOME,JAVA_HOME使用%
2024-01-09 14:05:31
997
原创 【Python】AppUI自动化—appium自动化元素定位、元素事件操作(17)下
使用Python或Java调用相关的Client,那么Appium里就会通过`Webdriver协议`(Selenium里同样)在应用层进行HTTP方式的数据请求,收到请求的手机上`Appium APP`的**Server**就会解析相关的请求并且使用`Appium`提供的相应`自动化测试方法`去驱动手机做出相应的操作。
2023-11-10 17:32:05
2258
原创 【Python】AppUI自动化—appium自动化开发环境部署、APP测试案例(17)上
Appium是一个跨平台移动端自动化测试工具,可以为IOS和Android平台创建自动化测试用例。可以模拟App内部的各种操作,如点击、滑动、文本输入等。只要我们手工操作的动作Appium都可以完成。appium 支持多平台、多语言appium在不同平台中使用了标准的自动化APIs,所以在跨平台时,不需要重新编译或者修改自己的应用。appium支持Selenium WebDriver支持的所有语言
2023-11-09 17:12:21
4347
原创 【Andriod】使用adb命令安装和卸载apk的通用python脚本
adb 称之为:`Android 调试桥 (Android Debug Bridge )`是一种允许`模拟器或已连接的 Android 设备`进行通信的`命令行工具`,它可为各种设备操作提供便利,如`安装和调试应用`,并提供对 `Unix shell(`可用来在模拟器或连接的设备上`运行各种命令`)的访问。
2023-10-26 14:33:17
1699
原创 【Andriod】Appium的不同版本(Appium GUI、Appium Desktop、Appium Server )的安装教程
**`Appium 的核心就是 Appium Server`,使用` node.js` 语言实现,所以在安装 Appium Server 命令行版本之前我们需要先`安装配置 node.js`。Appium 命令行版本安装`相较于 Appium 图形化版本要复杂很多`,建议初学者先安装桌面版本练习,后续再使用命令行版本。**
2023-10-20 14:59:21
4689
2
原创 【Andriod】adb调试安卓手机时连接真机或模拟器的3种方法,你知道么?
adb 称之为:`Android 调试桥 (Android Debug Bridge )`是一种允许`模拟器或已连接的 Android 设备`进行通信的`命令行工具`,它可为各种设备操作提供便利,如`安装和调试应用`,并提供对 `Unix shell(`可用来在模拟器或连接的设备上`运行各种命令`)的访问。 - 可以在`Android SDK/platform-tools`中找到` adb 工具或下载 ADB Kits `。
2023-10-20 14:04:50
19759
1
原创 【Java基础】JDK下载安装及环境配置完整教程
Jdk(Java development kit): JDK是 Java语言的软件开发工具包,主要用于移动设备,嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。在进行java开发的时候,都要先安装好JDK,JRE,以及其他java工具。没有JDK的话,无法编译Java程序(指java源码.java文件),如果想只运行Java程序(指class或jar或其它归档文件),要确保已安装相应的JRE。
2023-10-20 10:49:43
627
原创 【Andriod】SDK下载安装及环境配置完整教程
由于 Android Studio 的安装包过大,而使用 adb命令 的时候实际上只需要用到 SDK 工具而已。所以推荐大家去另外一个国内的 Android 工具的下载网站 androiddevtools 下载。进入页面后点击【Android SDK 工具】按钮,然后在弹出的选择框内点击【SDK Tools】按钮,然后界面会自动跳转到SDK 的下载界面,选择适合自己的版本进行下载
2023-10-20 10:37:00
27912
30
原创 【Python】WebUI自动化—如何用Selenium IDE录制脚本生成单元测试代码(基于Chrome)(17)
**Selenium IDE是Chrome和FireFox浏览器中的插件,Selenium IDE结合浏览器提供`脚本录制、脚本回放、脚本编辑、元素定位`等功能,使用Selenium IDE可以将录制的脚本生成相应单元测试框架的自动化测试脚本,录制脚本支持导出`Python pytest、Java JUnit、 NUnit等格式`**
2023-10-09 10:26:02
2223
原创 【Python】WebUI自动化—Selenium的下载和安装、基本用法、项目实战(16)
Selenium 是一个用于测试Web 应用程序的自动化测试工具,它直接运行在浏览器中,实现了对浏览器的自动化操作,它支持所有主流的浏览器,包括IE,Firefox,Safari,Chrome 等。-支持所有主流平台(如,等)实现了诸多自动化功能,比如软件自动化测试,检测软件与浏览器兼容性,自动录制、生成不同语言的测试脚本,以及自动化爬虫等。Selenium 提供了一个工具集,包括Selenium WebDriver(浏览器驱动)、Selenium IDE(录制测试脚本)、
2023-10-08 15:06:49
2190
原创 【SpringBoot】集成SpringSecurity+JWT实现多服务单点登录,原来这么easy
- **单点登录(SingleSignOn,SSO)**,当用户在身份`认证服务器`上登录一次以后,即可**获得访问单点登录系统中其他关联系统和应用软件的权限**,同时这种实现是不需要管理员对用户的登录状态或其他信息进行修改的,这意味着在多个应用系统中,`用户只需一次登录就可以访问所有相互信任的应用系统`。这种方式减少了由登录产生的时间消耗,辅助了用户管理,是目前比较流行的一种**分布式登录方式**。
2023-09-25 16:49:06
2765
Inkscape是一个开放源码的矢量绘图软件
2023-10-09
exe4j+infoSetup.zip
2021-02-22
屏幕亮度调节软件 8.2.1.4 正式版.zip
2021-02-22
python滑动验证
2023-10-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人