进阶的华夫饼进大厂
码龄5年
求更新 关注
提问 私信
  • 博客:20,279
    问答:8
    20,287
    总访问量
  • 18
    原创
  • 227
    粉丝
  • 37
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:河南省
加入CSDN时间: 2021-08-23

个人简介:用代码编织思维的迷宫,邀世界来探索。

博客简介:

sober_zyx的博客

查看详细资料
个人成就
  • 获得373次点赞
  • 内容获得1次评论
  • 获得290次收藏
  • 博客总排名2,483,076名
创作历程
  • 5篇
    2025年
  • 13篇
    2024年
成就勋章

TA关注的专栏 1

TA关注的收藏夹 0

TA关注的社区 4

TA参与的活动 2

创作活动更多

「谁说嵌入式只是调包和焊板子?」—— 2026嵌入式全栈技术征锋令

谁说嵌入式只会“Ctrl+C 调包”和“拿电烙铁焊板子”?2026嵌入式全栈技术征锋令正式启幕! 本次活动专为硬核硬件/软件开发者打造,无论你是刚玩转裸机外设的萌新,还是精通RTOS调度、死磕底层驱动的行业老手,亦或是执掌系统架构的大神,这里都是你证明实力的舞台! 拒绝表面功夫,每一行代码,都有撬动硬件的力量!晒出你的硬核工程实战,为嵌入式开发者的全栈硬实力正名!

213人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

从GET到POST:HTTP请求的攻防实战与CTF挑战解析

方法论认知:没有绝对安全的请求方法,只有合理的架构设计安全开发准则最小化参数暴露范围严格区分读写操作实施分层防御策略渗透测试思维请求方法篡改测试参数位置混淆测试头部注入探测你能说出这个请求潜在的安全风险吗?答案可能包括:权限提升、未验证的方法使用、敏感操作缺乏二次认证等。在评论区留下你的分析!
原创
博文更新于 2025.04.19 ·
1292 阅读 ·
8 点赞 ·
0 评论 ·
10 收藏

当HTTP遇到SQL注入:Java开发者的攻防实战手册

编码规范:始终使用预编译语句,禁止字符串拼接框架善用:充分利用Spring、JPA等框架的安全特性输入控制:在系统边界进行严格的输入验证纵深防御:结合WAF、数据库权限控制等基础设施持续改进:通过代码审查、渗透测试持续加固系统// 安全开发的核心原则"所有外部输入都不可信,必须经过验证和转义";
原创
博文更新于 2025.04.19 ·
1359 阅读 ·
19 点赞 ·
0 评论 ·
7 收藏

Windows系统C盘深度清理指南

随着Windows系统长期使用,C盘空间逐渐被各种临时文件、系统缓存和软件残留占据。本文提供手动清理+自动化脚本+维护方案的全方位解决方案,帮助用户安全释放磁盘空间,提升系统运行效率。通过"日常清理+自动化脚本+使用规范"的组合方案,可有效控制系统盘空间占用。建议每季度执行一次深度清理,配合存储感知功能进行日常维护。所有清理操作前请确保重要数据已备份,系统关键功能清理建议创建还原点。注意:涉及系统文件的清理操作建议在专业人员指导下进行。
原创
博文更新于 2025.04.19 ·
900 阅读 ·
4 点赞 ·
0 评论 ·
6 收藏

vue中,按照批次上传formData 文件

答:
const uploadListS = this.uploadListS;
const path = this.path;
const batchSize = 3;
const sendBatches = [];

for (let i = 0; i < uploadListS.length; i += batchSize) {
    const batch = uploadListS.slice(i, i + batchSize);
    const batchFormDataList = batch.map(file => {
        const formData = new FormData();
        formData.append('file', file);
        formData.append('pathData', file.webkitRelativePath);
        formData.append('path', path);
        return formData;
    });
    sendBatches.push(batchFormDataList);
}

sendBatches.forEach((batchFormDataList) => {
    const promises = batchFormDataList.map((formData) => {
        return uploadrequestbodyfile(formData).then(res => {
            this.$message.success(res.msg);
        });
    });
    Promise.all(promises).catch((error) => {
        console.error('Error in batch upload:', error);
    });
});

在这段代码里:

  1. 首先按照每次3个文件的数量,将文件列表 this.uploadListS 切分成多个批次,存放在 sendBatches 数组中。
  2. 针对每个批次,为每个文件单独创建 FormData 对象,并添加对应的文件、路径数据等信息。
  3. 利用 Promise.all 并发执行每个批次内的上传请求,当一个批次的所有请求完成后,再处理下一个批次,这样就满足了分批次发送文件的需求。
回答问题 2025.01.04

Seata 使用教程:全面解锁分布式事务管理

Seata 致力于在分布式场景下,为多个微服务间的事务协调提供一站式解决方案。它能够确保在分布式事务中的各个参与者,如不同的微服务实例、数据库操作等,要么全部成功提交,要么在出现异常时全部回滚,以此维护数据的完整性与一致性,就如同为分布式系统穿上了一层坚固的“数据铠甲”。
原创
博文更新于 2025.01.04 ·
780 阅读 ·
26 点赞 ·
0 评论 ·
9 收藏

数据库设计

在当今数字化驱动的世界里,数据已然成为企业和组织最为宝贵的资产之一。而数据库,作为数据的“栖息地”,其设计的优劣直接关系到整个信息系统的性能、可维护性以及能否高效满足业务需求。一个精心构思的数据库设计方案,就如同为一座高楼打下坚实的地基,能确保后续的软件应用在其上稳固构建并顺畅运行。
原创
博文更新于 2025.01.04 ·
966 阅读 ·
11 点赞 ·
0 评论 ·
8 收藏

MySQL安装资源及配置教程

发布资源 2025.01.04 ·
zip

请问如何用python画叠加条状图

答:

要绘制叠加条状图,展示每个姓名在不同日期中取用不同类型车辆的频次,且使用不同颜色分别表示两种车辆(如“货车”和“轿车”),可以按照以下步骤来完成:

  1. 数据整理:首先需要将数据整理成可以按姓名、车辆类型统计频次的格式。
  2. 绘制叠加条状图:使用 matplotlib 和 pandas 库来绘制图表。

代码示例

假设你的数据保存在一个 pandas DataFrame 中,可以按照以下步骤操作:

import pandas as pd
import matplotlib.pyplot as plt

# 构建示例数据
data = {
    '日期': ['2024/1/1'] * 12,
    '姓名': ['赵甲', '钱乙', '孙丙', '赵甲', '孙丙', '孙丙', '赵甲', '孙丙', '钱乙', '赵甲', '孙丙', '孙丙'],
    '取用车辆': ['货车', '轿车', '货车', '货车', '轿车', '货车', '货车', '轿车', '货车', '货车', '轿车', '轿车']
}

df = pd.DataFrame(data)

# 按姓名和车辆类型统计频次
vehicle_counts = df.groupby(['姓名', '取用车辆']).size().unstack(fill_value=0)

# 绘制叠加条状图
ax = vehicle_counts.plot(kind='bar', stacked=True, color=['skyblue', 'orange'], figsize=(10, 6))

# 设置图表标题和标签
ax.set_title('不同姓名取用车辆频次分布')
ax.set_xlabel('姓名')
ax.set_ylabel('频次')

# 显示图表
plt.tight_layout()
plt.show()

解释:

  1. 数据整理:我们使用 groupby() 方法按 姓名 和 取用车辆 进行分组,并用 size() 计算每组的大小。然后,使用 unstack() 将车辆类型作为列,行作为姓名,生成一个数据透视表,填充空值为 0。
  2. 叠加条状图:plot(kind='bar', stacked=True) 绘制了叠加的条形图。color=['skyblue', 'orange'] 指定了不同车辆类型的颜色。
  3. 显示图表:plt.tight_layout() 调整布局,避免标签重叠。

结果:

图表的横轴为姓名,纵轴为频次,且每个人的柱状图会分为两部分,分别代表“货车”和“轿车”的取用频次。

回答问题 2025.01.04

Elasticsearch 实战应用:构建高效搜索与数据分析平台

Elasticsearch 是基于分布式架构设计的,它由多个节点组成,这些节点可以分布在不同的服务器上。节点分为主节点(Master Node)、数据节点(Data Node)和协调节点(Coordinating Node)。主节点负责管理集群的状态和元数据,数据节点存储实际的数据,协调节点则负责接收用户的请求,将请求路由到合适的数据节点,并对结果进行汇总和返回。
原创
博文更新于 2024.12.22 ·
1174 阅读 ·
30 点赞 ·
0 评论 ·
8 收藏

Spring Boot 项目实战:法务资讯平台

在当今数字化时代,法务资讯的快速传播与高效管理对于法律从业者、企业以及普通民众都具有极为重要的意义。基于 Spring Boot 框架构建的法务资讯平台能够整合各类法务信息资源,提供便捷的资讯查询、发布与交流功能。本文将深入剖析该项目的结构以及业务流程,助力读者全面理解 Spring Boot 在法务资讯平台开发中的应用。
原创
博文更新于 2024.12.22 ·
718 阅读 ·
15 点赞 ·
0 评论 ·
23 收藏

机器学习实战:利用决策树预测心脏病风险

我们选用的数据集来自 UCI 机器学习库中的心脏病数据集。该数据集包含了 303 个样本,每个样本有 14 个特征,这些特征包括患者的年龄、性别、血压、胆固醇水平、是否有胸痛等信息,以及一个目标变量,表示患者是否患有心脏病(1 表示患有心脏病,0 表示未患有心脏病)。
原创
博文更新于 2024.12.21 ·
1090 阅读 ·
18 点赞 ·
0 评论 ·
10 收藏

探秘深度学习模型:从梯度消失到梯度爆炸的应对之策

在深度学习的广袤领域中,深度神经网络以其强大的学习能力和广泛的应用前景而备受瞩目。然而,随着网络层数的不断加深,模型在训练过程中往往会遭遇一些棘手的问题,其中梯度消失(Vanishing Gradient)和梯度爆炸(Exploding Gradient)现象尤为突出,它们犹如隐藏在深度学习模型深处的“暗礁”,严重影响着模型的训练效果和性能表现。
原创
博文更新于 2024.12.21 ·
1058 阅读 ·
5 点赞 ·
0 评论 ·
20 收藏

Spring 高级魔法:深度解锁编程奇幻世界

Bean 的定义方式:可以通过 XML 配置文件、Java 配置类或者使用注解来定义 Bean。例如,在 XML 文件中使用标签,配置 Bean 的类名、属性等信息;在 Java 配置类里,通过注解标记该类是配置类,然后使用@Bean注解定义方法来返回相应的 Bean 实例;而像@Component@Service等注解可以直接标注在对应的类上,让 Spring 自动扫描并将其注册为 Bean。Bean 的作用域(Scope):Spring 提供了多种作用域,常见的有singleton。
原创
博文更新于 2024.12.20 ·
1913 阅读 ·
39 点赞 ·
0 评论 ·
25 收藏

Linux 常用操作指令指南:开启高效命令行之旅

Linux 操作系统以其卓越的稳定性、安全性和强大的功能,在服务器管理、软件开发以及众多技术领域占据着举足轻重的地位。而熟练掌握 Linux 常用操作指令,就如同拥有了打开这一强大系统宝库的钥匙,能够让你在命令行的世界里高效驰骋,轻松应对各种任务。以下将详细介绍一系列必备的 Linux 常用操作指令及其应用场景。
原创
博文更新于 2024.12.20 ·
921 阅读 ·
10 点赞 ·
0 评论 ·
18 收藏

MyBatis 奇幻之旅:探索数据持久化的魔法世界

在 Java 数据持久化的广袤天地中,MyBatis 仿若一颗划破夜空的奇异星辰,带着独特的使命降临。曾经,传统 JDBC 让开发者在数据库操作的荆棘丛中艰难跋涉,大量重复、繁琐的代码编写如同沉重的枷锁,束缚着开发效率与创造力。而 MyBatis 的出现,宛如一位智慧的魔法师,手持神奇的魔杖,轻轻一挥,便驱散了这片阴霾。它以简洁而优雅的方式,重新定义了数据与代码之间的交互规则,让开发者能够挣脱束缚,将更多的精力与灵感倾注于业务逻辑的构建之中,编织出更为绚丽多彩的应用画卷。
原创
博文更新于 2024.12.20 ·
582 阅读 ·
16 点赞 ·
0 评论 ·
6 收藏

MySQL 奇幻之旅:从基础探秘到高级应用魔法

在数据库的神秘世界里,MySQL 宛如一座蕴藏无尽宝藏的城堡,我怀揣着探索的热情与求知的渴望,踏上了这趟扣人心弦的学习征程。
原创
博文更新于 2024.12.20 ·
1053 阅读 ·
11 点赞 ·
0 评论 ·
8 收藏

Java 编程世界的基石探秘

在 Java 中,方法是一段可重复调用的代码块,用于完成特定的功能。方法定义包括方法头和方法体,方法头包含访问修饰符、返回类型、方法名和参数列表,方法体是用花括号括起来的代码块。这就像是将一系列相关的操作步骤封装在一个盒子里,并贴上明确的标签(方法名),注明其功能(返回类型)、可访问范围(访问修饰符)以及所需的输入参数(参数列表)。例如,定义一个计算两个整数之和的方法通过明确的方法定义,使得这个求和功能可以在程序的多个地方被方便地调用,提高了代码的复用性与可维护性。
原创
博文更新于 2024.12.20 ·
2309 阅读 ·
57 点赞 ·
1 评论 ·
48 收藏

解锁 IDE 高效编程秘籍:技巧与插件大揭秘

在软件开发的浩瀚星空中,集成开发环境(IDE)犹如一颗璀璨的明星,照亮着程序员们前行的道路。而 IntelliJ IDEA 作为其中的佼佼者,其蕴含的强大能量有待开发者们深入挖掘。本文将为您全方位呈现 IntelliJ IDEA 的使用技巧以及一系列精选插件,结合实际开发情境,带您领略高效编程的奇妙之旅,助力您在代码世界中畅行无阻。
原创
博文更新于 2024.12.20 ·
1035 阅读 ·
33 点赞 ·
0 评论 ·
22 收藏

MySQL 数据备份与恢复深度剖析

MySQL 作为一款广泛应用于各类信息系统的开源关系型数据库管理系统,承载着海量的关键业务数据。在复杂多变的信息技术环境中,无论是应对硬件设备的突发故障、软件系统的漏洞隐患,还是防范人为操作的失误与恶意网络攻击的威胁,一套精心规划且高效执行的备份与恢复策略都能确保 MySQL 数据库的数据资产安然无恙。通过对逻辑备份与物理备份多种方法的深入理解与灵活运用,结合严谨的备份计划、全面的备份验证机制、安全的异地存储策略以及合理的多版本备份保留方案,数据库管理员能够构建起强大的数据保护体系。
原创
博文更新于 2024.12.20 ·
1834 阅读 ·
43 点赞 ·
0 评论 ·
31 收藏

Docker 魔法世界全解析:容器化的奇幻之旅

在当今数字化浪潮汹涌澎湃的时代,Docker 宛如一颗璀璨的明星,闪耀在软件开发与部署的浩瀚星空中。它以独特的魅力,为开发者们开启了一段充满奇幻与高效的容器化之旅。那么,究竟什么是 Docker,它又蕴含着哪些奇妙的知识点呢?让我们一同踏入这个神奇的 Docker 魔法世界。
原创
博文更新于 2024.12.19 ·
890 阅读 ·
23 点赞 ·
0 评论 ·
23 收藏
加载更多