自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 Pytest接口自动化测试实战演练_from comms

req = requests.session()#定义session会话# 定义公共请求头Win64;params = {# 封装自己的get请求,获取资源# 封装自己的post方法,创建资源# 封装自己的put方法,更新资源# 封装自己的delete方法,删除资源‘’’Code description: 封装输出日志文件Developer: 叶修‘’’import ospath = getpathinfo.get_path()#获取本地路径。

2025-02-06 13:58:23 264

原创 pytest一些常见的插件

Pytest拥有丰富的插件架构,超过800个以上的外部插件和活跃的社区,在PyPI项目中以“ pytest- *”为标识。本篇将列举github标星超过两百的一些插件进行实战演示。插件库地址:http://plugincompat.herokuapp.com/1、pytest-html:用于生成HTML报告一次完整的测试,测试报告是必不可少的,但是pytest自身的测试结果过于简单,而pytest-html正好可以给你提供一份清晰报告。

2025-02-06 13:56:39 610

原创 MyBatis的Mapper接口以及Example的实例函数及详解

mybatis的逆向工程中会生成实例及实例对应的example,example用于添加条件,相当where后面的部分| 方法 | 说明 || — | — || example.setOrderByClause(“字段名 ASC”);| 添加升序排列条件,DESC为降序 || example.setDistinct(false) | 去除重复,boolean型,true为选择不重复的记录。| criteria.andXxxIsNull | 添加字段xxx为null的条件 |

2025-02-06 04:27:09 566

原创 mongodb备份与恢复_unbuntu mongodb 备份恢复

备份恢复上述使用的root帐号需要提前建立好并且备份需要读的权限,恢复需要读写的权限首先需要创建dba帐号用于管理admin库的users管理之后建立超级管理员的用户创建之前需要db.auth(”dba”,’dba”)认证通过之后才可以创建root帐号。

2025-02-06 03:52:21 1685

原创 Kotlin协程到底是怎么切换线程的?你是否知晓?

从使用上来讲,调度器就是我们使用的等从作用上来讲,调度器的作用是控制协程运行的线程从结构上来讲,的父类是,然后再继承于它们的类结构关系如下:这也是为什么能加入到中的原因,并且支持操作符来完成增加从命名上很容易看出,即协程拦截器,先看一下接口// ContinuationInterceptor 在 CoroutineContext 中的 Key/**拦截 continuation*///…从上面可以提炼出两个信息1.拦截器的Key是单例的,因此当你添加多个拦截器时,生效的只会有一个。

2025-02-05 23:59:28 726

原创 kotlin与java在Android开发中的简单对比(正在更新中)

2.1.1 若为新项目,则IDE创建时选择Kotlin。1.5.4.1 带返回值的方法。1.5.6 可变参数数量(vararg)1.1.3 三元表达式(三目运算符)2.2.1 Kotlin调用Java。2.2.2 java调用kotlin。1.2.0 类型判断和转换(隐式)var car = object // 智能转换。1.5.1 精简Set/Get方法。1.5.9 方法重载(可选参数)2.2 Kotlin与Java混编及互操作。1.1.5 拼接字符串。1.5.2 精简属性调用。1.1.4 多重条件。

2025-02-05 23:57:46 649

原创 Kotlin 和 Flutter 对于开发者究竟意味着什么?

优快云 编者注:对于这一点,在 优快云《2018 – 2019 中国开发者调查报告》中,拥有十几年移动开发经验的轻芒联合创始人范怀宇对此表示:Java 的 Web 框架经过千锤百炼已经可以支撑足够大的并发,JVM 经过长年优化性能表现也非常出众,而 Java 的各类库、统一的编程模型、丰富的人才储备,可以满足各种场景的诉求。出于综合考虑且必须二选一的情况下,建议你选择 Flutter,但是如果你有兴趣见识一种比 Java 更安全,更简洁,更实用,更优雅的语言的话,我也推荐你学一学 Kotlin。

2025-02-05 23:56:02 243

原创 Java并发编程 - 可见性、原子性、有序性 & Java内存模型如何解决可见性、有序性

为什么会出现这种结果呢?我们假设线程 1 和线程 2 同时开始执行,那么第一次都会将 count=0 读到各自的线程工作内存里,执行完 count++ 之后,各自的线程工作内存里的值都是 1,同时写入内存后,我们会发现内存中是 1,而不是我们期望的 2。之后由于各自的线程工作内存里都有了 count 的值,两个线程都是基于线程工作内存里的 count 值来计算,所以导致最终 count 的值都是小于 200000 的。这就是线程工作的可见性问题。物理硬件层面的可见性。

2025-02-05 19:40:50 571

原创 Java并发之AQS详解

提供了一套可用于实现锁同步机制的框架,不夸张地说,AQS是JUC同步框架的基石。AQS通过一个FIFO队列维护线程同步状态,实现类只需要继承该类,并重写指定方法即可实现一套线程同步机制。AQS根据资源互斥级别提供了两种资源访问模式;同时其定义Condition结构提供了等待唤醒机制。在JUC中,诸如等都基于AQS实现。AQS框架。

2025-02-05 19:39:09 605

原创 ES能为你解决什么问题,又会带来什么问题?

ES香不香看你怎么用。有人用的很爽,有人用的很痛苦。用好了就少加班调索引,调sql。用不好就常加班调ES。优点:1.高并发2.容错能力比mg强。比如1主多从,主片挂了从片会自动顶上3.满足大数据下实时读写需求,无需分库(不存在库的概念)。4.易扩展。分片数据自动均衡5.支持较复杂的条件查询,group by、排序都不是问题比如1主多从,主片挂了从片会自动顶上3.满足大数据下实时读写需求,无需分库(不存在库的概念)。4.易扩展。分片数据自动均衡。

2025-02-04 16:08:59 876

原创 ESP32硬件参考详细说明_esp32-d0wd外围电路

注意:不是所有的GPIO都可以在所有的开发板中访问,但是每个特定的GPIO都以相同的方式工作,不管你使用的是哪个开发板。

2025-02-04 16:07:17 2085

原创 ESP32-C3入门教程 网络 篇(三、 MQTT 协议基础介绍及测试)_esp32c3 mqtt

MQTT百度百科MQTT–入门MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在 TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个消息中间件。MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。

2025-02-04 16:02:05 975

原创 Centos7服务器同步网络发现漏洞与修复手册(每周更新3次)_cve-2023-2828

OpenSSH 代码问题漏洞(CVE-2023-38408)

2025-02-04 11:37:24 201

原创 centos7二进制离线安装和卸载docker_centos 卸载离线docker

从官方网站上选一个适合的版本:https://download.docker.com/linux/static/stable/x86_64/在安装过程中,我们将解压文件中的二进制文件拷贝到了/usr/bin/ 文件夹下了,我们将拷贝到该文件夹下的二进制文件删除。如上图所示,我上面粘贴完是这样的(第一行看着不全),我手贱把第一行补全,之后注册服务就报错了。3.将docker 相关命令拷贝到 /usr/bin,方便直接运行命令。2.删除docker相关文件和服务。1.删除docker所安装的位置。

2025-02-04 11:35:42 390

原创 Android四大组件(三) ContentProvider

Toast.makeText(mContext, “未查询到数据”, Toast.LENGTH_SHORT).show();//1, 读取联系人 因为可能联系人比较多,可能会读取很久,不想阻塞主线程,所以放到子线程中读取联系人。//5, 判断联系人数据是否为空 如果姓名或者电话有任何一项是空的,那么就不保存。//检查用户是否已经给我们授权了权限,相等则已经授权,不等则没授权。//2, 如果先前没有加载,则就没有缓存View,则需要加载一下。LogUtil.d(TAG, “申请联系人权限成功”);

2025-02-04 06:01:19 782

原创 Android动态换肤实现原理解析,满满干货指导

*一个零基础的新人,我认为坚持是最最重要的。**我的很多朋友都找我来学习过,我也很用心的教他们,可是不到一个月就坚持不下来了。我认为他们坚持不下来有两点主要原因:他们打算入行不是因为兴趣,而是因为所谓的IT行业工资高,或者说完全对未来没有任何规划。刚开始学的时候确实很枯燥,这确实对你是个考验,所以说坚持下来也很不容易,但是如果你有兴趣就不会认为这是累,不会认为这很枯燥,总之还是贵在坚持。技术提升遇到瓶颈了?缺高级Android进阶视频学习提升自己吗?还有大量大厂面试题为你面试做准备!

2025-02-04 05:59:37 278

原创 Android ImageView及其子类 介绍+实例

Override//添加权限//使用图片加载框架(Universal、ImageLoader、Picasso、Fresco、Glide)加载图片//以Picasso为例,这里用到加载网络图片load(Uri),//但是他还可以load(File)、load(String)、load(int)//感兴趣的可以看看源码它是怎么实现的,这里就不说了。毕竟,本文重点是ImageView。

2025-02-03 19:02:55 630

原创 Spring Boot 2(1)

众所周知,HTTP请求的Content-Type有各种不同格式定义,如果要支持Xml格式的消息转换,就必须要使用对应的转换器。最后,启动Spring Boot应用,通过POSTMAN等请求工具,尝试一下这个接口,可以看到请求Xml,并且返回了经过处理后的Xml内容。同时,为了配置Xml数据与维护对象属性的关系所要使用的注解也在上述依赖中,所以这个依赖也是必须的。是lombok简化代码的注解,主要用于生成get、set以及构造函数。注解是用来维护对象属性在xml中的对应关系。

2025-02-03 10:02:50 768

原创 Spring AOP基础知识总结

AOP(Aspect Oriented Programming)称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等等,Struts2的拦截器设计就是基于AOP的思想,是个比较经典的例子。在不改变原有逻辑的基础上,增加了一些额外的功能。代理也是这个功能,读写分离也是用AOP来实现的。

2025-02-03 10:01:07 842

原创 Linux基础 - Linux系统目录结构

创建目录时报错处理。

2025-02-02 02:09:54 111

原创 Linux中怎么保护SSH的安全

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。(都打包成一块的了,不能一一展开,总共300多集)

2025-02-02 02:08:08 885

原创 css3变形、过渡、动画(学习笔记)

说明:单位为deg(即degree的缩写)

2025-01-31 10:39:00 684

原创 CSS3 平面 2D 变换+CSS3 过渡

本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论!

2025-01-31 10:37:17 630

原创 Android 如何编写基于编译时注解的项目

免去我们编写View的初始化以及事件的注入的代码。方便我们实现组建间通讯。轻松的为fragment添加参数信息,并提供创建方法。可实现自动将任意对象转换为Parcelable类型,方便对象传输。类似的库还有非常多,大多这些的库都是为了自动帮我们完成日常编码中需要重复编写的部分(例如:每个Activity中的View都需要初始化,每个实现Parcelable接口的对象都需要编写很多固定写法的代码)。

2025-01-24 16:34:55 522

原创 2022虎年烟花代码

class firew:def init(self, pos, color, light, size, move):self.pos = list(pos)self.color = list(color)self.light = lightself.size = sizeself.move = list(move)def force(self, force):self.move[0] += force[0]self.move[1] += force[1]self.move[0] *= force[2]sel

2025-01-24 01:39:39 1332

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除