- 博客(74)
- 问答 (1)
- 收藏
- 关注
原创 “application/json“,“text/plain“ 分别表示什么
这两个字符串:“application/json” 和 “text/plain” 是 MIME 类型(媒体类型),用于告诉接收方消息内容的格式,它们出现在 ContentType 字段中。它告诉系统或程序:“这段数据是什么格式?
2025-06-02 22:26:26
325
原创 Go语言中为什么map、slice、channel需要var之后还要make一下?
在 Go 语言中,当你声明的变量是某些复合类型(map、slice、channel)时,var 定义后仍需要 make() 初始化,否则就是 nil,一用就会 panic。make() 是 为 Go 的内建引用类型分配和初始化底层数据结构。它返回的是 已初始化的引用类型值,可直接使用。map、slice、chan 用 var 声明后仍是 nil,想用必须 make(),否则 panic。make() 针对的是:map、slice、chan。🧠 哪些类型需要 make()?
2025-05-23 16:14:54
446
原创 Go语言中内存释放 ≠ 资源释放
这里的stmt需要手动回收,rows需要吗?stmtrows🔍 原因详解stmt 是通过 Prepare() 创建的预编译语句句柄。它通常会绑定数据库连接资源,即使查询结束也不会自动释放。不关闭会导致连接池资源泄漏,最终使数据库拒绝新的连接。rows 是执行查询后返回的结果集,底层其实是一个它,直到你显式地关闭或完全遍历完所有行。如果不 Close():连接不会释放给连接池(可能一直挂起)资源泄漏:数据库连接数会越来越多,直到超出限制✅ 总结。
2025-05-23 15:56:24
374
原创 为什么后端加上 Content-Type: application/json 后,前端反而 JSON.parse 报错?
当后端响应设置了 Content-Type: application/json,浏览器或 jQuery 会自动把响应体解析为 JSON 对象。此时,前端无需也不能再 JSON.parse(),否则会因为重复解析导致语法错误。(因为对象的 toString() 是 “[object Object]”,不符合 JSON 格式)这就是错误:“[object Object] is not valid JSON” 的来源。2. 前端的 JSON.parse 是期望字符串类型。前端 ✅ 不再手动解析。
2025-05-22 21:46:51
244
原创 Go 语言中的 Struct Tag 的用法详解
在 Go 语言中,结构体字段标签(Struct Tag) 是一种用于给字段添加元信息(metadata)的机制,常用于序列化(如 JSON、XML)、ORM 映射、验证等场景。其中的就是字段标签,它并不影响 Go 语言本身的语法逻辑,但它在使用反射(reflect)时非常有用,特别是当你用标准库如 encoding/json 时。
2025-05-22 20:55:48
1038
原创 详解一下Go语言中的ParseInt
但你可以向它输入任何可以接收的进制数。32:结果不能超出 int32 范围。16:结果不能超出 int16 范围。0 或 64:输出为 int64。8:结果不能超出 int8 范围。该函数将输入的字符串转换成。
2025-05-22 16:42:01
399
原创 js中encodeURIComponent函数使用场景
配套的解码函数是 decodeURIComponent(),用来将编码后的字符串还原回原始内容。如果你直接拼接这些字符到 URL 中,浏览器会无法正确识别或者出错。现在这个 URL 就安全可传输,浏览器和服务器都能正确解码回原文。⚠️ 这会导致 URL 被错误地解析,参数分隔混乱。空格、中文、特殊符号等等也不能直接放在 URL 中。✅ 解码(如果需要)
2025-05-22 15:29:10
438
原创 Go语言中函数 vs 方法
Go 方法接收者可以是值也可以是指针,区别在于是否能修改原对象。✅ 结果一样,但 c.Area() 更面向对象,也更清晰语义。✅ 这个函数是“独立”的,跟任何结构体或类型无关。三、指针接收者 vs 值接收者。一、函数(Function)二、方法(Method)
2025-05-18 21:12:06
444
原创 为什么go语言中返回的指针类型,不需要用*取值(解引用),就可以直接赋值呢?
在 Go 中,如果你有一个结构体指针(例如 *FileMeta),你可以直接用 p.Field 的方式访问字段,Go 会自动帮你做 (*p).Field 的转换。Go 编译器会自动将指针字段访问 f.Field 翻译为 (*f).Field,这叫做“自动解引用”,是 Go 语言为了简化语法做的语法糖处理。Go 中返回的是指针,但你却能直接用“.”访问字段,看起来像是“没有解引用”,其实是 Go 帮你自动处理了“指针解引用”的语法糖。🧠 背后原理:自动解引用(auto dereferencing)
2025-05-14 21:34:21
291
原创 为什么 import _ “github.com/go-sql-driver/mysql“ 要导入但不使用?_ 是什么意思?
这是 “匿名导入”,它的目的是:执行该包的 init() 函数,但不使用包里的其他标识符(函数、变量等)。你会发现这里的 “mysql” 是个字符串,但 database/sql 并不知道这个驱动实现在哪。所以你导入这个包的唯一目的就是:让它自动注册进 Go 的数据库驱动系统中。所以:我们必须显式告诉 Go 去“注册”这个 “mysql” 驱动。编译器会报错:“imported and not used”。_ 表示“匿名导入”:只执行 init(),但不引入包名。因为你确实没有用到这个包里的任何显式符号。
2025-05-13 17:09:42
314
原创 git命令积累(个人学习)
如果你希望 .docx 文件被 Git 追踪,但同时想排除某些 .docx 文件不被上传到远程仓库,或者希望有选择地上传某些 .docx 文件,你可以通过调整 .gitignore 文件的规则以及 Git 的使用方法来实现这一目标。这将从 Git 仓库中删除 .docx 文件,但不会删除本地磁盘上的文件。它们仍然会保留在本地文件系统中,但不会再被 Git 跟踪。创建或编辑 .gitignore 文件。清除已追踪的 .docx 文件。如何将docx文件不上传?
2025-05-08 20:36:43
344
原创 go.mod没有自动缓存问题
但是由于使用的是Go Modules,GPT以及大多数人给的说法是 运行完这个依赖包会被自动同步更新到go.mod中,但是我这边一直没有被更新。不知道是不是我理解有问题。在Terminal运行下面命令安装时,包已经被下载安装到了GoPath中的bkg/mod。有没有大佬解释一下?难道是我第一次下载安装这个包,导致需要手动get?今天在安装Gin框架的时候遇到了一个问题。
2025-05-07 18:32:14
385
原创 Go语言中位清除运算符的应用场景
Go语言圣经》里面有对此的描述,x = a &^ b,当b为0的时候取a的值,当b为1的时候取0但作为初学者不太明白什么场景可以用到这个运算符?Gpt是这么说的:位清空运算符(&^)在 Go 语言中非常有用,它的主要作用是将操作数中对应于另一个操作数中 1 的位“清零”。
2025-03-07 16:17:09
297
原创 关于Python类中方法__init__()解析
因为Python调用这个__init__() 方法来创建car实例时,将自动传入实参self。每个与类相关联的方法调用都自动传递实参self ,它是一个指向实例本身的引用,让实例能够访问类中的属性和方法。可以理解为这样的好处的,使用self可以随意的调用所有有关类的属性和方法。
2024-09-04 15:51:12
524
1
原创 钩子函数onMounted定义了太多访问MySQL的操作 导致数据库异常
gpt: 你可以使用 JavaScript 中的 Promise 链来确保这些函数按顺序执行,并在前一个函数执行成功后再执行下一个函数。修改毕设vue代码,很多知识已经忘掉了,全程和gpt一起找bug,最后也没问出来什么,分析了一下应该是同时访问数据库次数太多了,让gpt帮忙修改了一下。我:怎么让这几个函数一个一个的执行,否则会经常数据库异常。先放几种后端遇到的异常,多数和数据库有关。
2024-05-09 18:02:23
356
1
原创 YOLOv8 服务器与本地tensorboard映射
解决方法:对服务器6006端口与本地端口进行映射,从而完成本地查看TensorBoard。这样就形成了在本地输入127.0.0.1:10086即可访问TensorBoard。服务器端输入后本地一直打不开,无法访问。
2024-03-14 12:09:55
1053
原创 YOLOv8常见问题解决方案
通过设置 resume=True,"…Ultralytics YOLO 您可以通过设置 resume 参数 True 在调用 train 方法的路径,并指定 .pt 文件,其中包含经过部分训练的模型权重。恢复训练时,Ultralytics YOLO 会加载上次保存模型的权重,并恢复优化器状态、学习率调度器和历时编号。这样,您就可以从上次中断的地方无缝地继续训练过程。请记住,默认情况下,检查点会在每个纪元结束时保存,或者使用 save_period 参数,因此您必须至少完成一个纪元才能恢复训练运行。
2024-02-23 15:16:09
2255
2
原创 YOLOv8目标检测中数据集各部分的作用
用于最终评估模型的泛化性能。测试集是模型在训练和验证阶段都没有见过的数据,用于模拟模型在实际应用中的表现。在训练完成后,通过测试集评估模型的性能,获取最终的性能指标。在每个训练周期(epoch)结束时,模型会在验证集上进行评估,以判断模型是否过拟合、欠拟合,以及选择最佳的超参数。model.train()的主要作用是在模型上执行训练步骤,其中包括前向传播、计算损失、反向传播和权重更新等步骤。: 用于模型的训练,即通过反向传播和梯度下降等优化算法来调整模型的权重,使其能够从数据中学到有用的特征和模式。
2024-01-15 18:56:55
3664
5
原创 vue3封装echarts图表数据无法渲染到页面
在你提供的代码中,ECharts 图表的数据被初始化为 this.cntData,但 this.cntData 在组件创建时是一个空数组。要使图表能够根据后端传来的数据进行渲染,你需要确保在数据加载完成后再初始化图表。在你的代码中,loadGet 方法通过异步请求从后端获取数据,并在获取数据后调用initEcharts 方法。问题是后端的数据已经成功返回到前端了,但是Echarts图表一直不能被渲染,卡了一个多小时,最后问gpt才解决(gptyyds!然而,挂载阶段还没开始,DOM 元素也还没有被创建。
2023-09-02 22:51:47
1703
原创 解决MySQL删除数据后自增主键ID不连贯问题
下列代码以water表中的id列为例。首先我们需要取消id的自增和主键。下一步就是重新设置为主键+自增。
2023-06-27 22:20:39
1326
2
原创 卡牌【蓝桥杯国赛】
很好的一个思路 用优先队列每次取队头元素对m进行消耗,然后再插回堆中,当m消耗完之后队头的元素first值就是结果了,如果遇到消除途中second==0 意思也就是没有继续写的额度了,就break掉(这也是为什么在O(m+n)的复杂度下不会T的原因)。这 5 张空白牌中, 拿 2 张写 1 , 拿 1 张写 2 , 这样每种牌的牌数就变为了 3,3,3,4, 可以凑出 3 套牌, 剩下 2 张空白牌不能再帮助小明凑出一套。
2023-06-09 20:38:40
232
原创 启动Spark集群web界面无work信息
MasterArguments:66 - SPARK MASTER IP is deprecated, please use SPARK MASTER HOST
2023-04-24 09:52:28
801
2
原创 我去图书馆微信公众号抢座【Python版本】
虽然大二写过py但是已经忘得差不多了,昨天凌晨还在看request,各种查博客,上午就想放弃了。但是有bug的程序我是受不了的,中午没来得及睡觉三点左右的时候肝出来了,最后发现是pc端微信获取到的cookie是错误的(也可能是我哪里没处理好),后来用手机连接fiddler拿到cookie才成功!这个图是抢占成功后再去request返回的结果 没看出来是Unicode编码 还好灵机一动搜了一下 结果发现我已经占座成功了 打开手机看了下已经显示可以去签到了。3.暴力请求就要加代理池了 被封了就不好了。
2023-04-21 17:22:43
16852
147
原创 启动Hadoop报错【Error: JAVA_HOME is not set and could not be found.】
Error: JAVA_HOME is not set and could not be found.
2023-04-02 19:31:18
1551
原创 第二届天元编程邀请赛(提高组)B 石老板腾云驾雾【唯一分解定理】
B 石老板腾云驾雾题意很直白~思路:唯一分解定理先引入一条结论:如果x为平方数 那么 存在整数b 使得 x=b^2 所以如果对x质因子分解,那么质因子的指数必定为偶数【因为都能被2整除(b的平方嘛~)】例如给定 x = 200 ,apart(200) = 2^3 * 5^2,如果存在一个数 c 使得c*x 为一个平方数,那么我只需要让c = x质因子分解后指数为奇数的底数相乘,这样就可以把x凑成平方数了如例,我们可以让c = 2 那么 就凑成了2^4 * 5^2 = 400 即平方数所以
2022-05-14 19:09:26
243
原创 C. Where is the Pizza?【并查集】
C. Where is the Pizza?题意:让你求一个排列数组ci在给定条件下有几种可能:给你两个1-n的乱序排列a[],b[],再给你一个n个数的d[i]数组,if di==0: 可以选择ai or bi 填充ci,else: ci = di ,让你求c[]有多少可能思路:其实一开始乱糟糟的没思路,但是模拟一下会发现几个数会组成一个环,而且每一个环的贡献值为2,假设有n个环,那么答案就是2^n;if ai==bi :贡献值为0 因为只有一种可能if di != 0: 贡献值为0 因
2022-05-11 22:46:38
483
原创 【01规划】POJ 3621 Sightseeing Cows
POJ 3621 Sightseeing Cows题意:给定一张 n 个点、m 条边的有向图,每个点都有一个权值 f[i],每条边都有一个权值 t[i]。求图中的一个环,使“环上各点的权值之和”除以“环上各边的权值之和”最大。输出这个最大值。思路:同样构造f(l), 令∑f[i] / ∑t[i] = l,那么∑f[i] = l*∑t[i] ,令f(l) = ∑(f[i] - l*t[i]) ,题目要求l尽可能大 ,也就是 ∑f[i] / ∑t[i] ≥ l 有更优解,也就是 f(l) ≥
2022-05-02 10:11:35
246
原创 【01规划】POJ 2728 Desert King
POJ 2728 Desert King题意:给出 n 个点的坐标和它的高度,求一颗生成树使得树上所连边的两点高度差之和除以距离之和最小。思路:同样构造f(l)方程, 令∑hight / ∑dis = l,那么∑hight = l*∑dis, 令f(l) = ∑(hight - l*dis) ,题目所求是最小值 那么∑hight / ∑dis ≤ l 说明存在更优解,即f(l) ≤ 0 ,二分 l 得出答案关于f(l)和二分边界判断 :我们设 cost = hight - l*dis ,把它
2022-05-02 09:44:56
379
原创 【01规划】POJ 2976 Dropping tests
POJ 2976 Dropping tests题意:给你n个分制成绩,让你从中去掉k个分制成绩使得这个最大例如给定 5/5,0/1,2/6,此时平均成绩为如果k=1 那么可获得最大的平均成绩为思路:研究了半天的01规划发现每个此类问题可以构造函数来操作令∑ai/∑bi = l, 那么∑ai = l*∑bi ,令f(l) = ∑(ai - l*bi)当∑ai / ∑bi ≥ l 时 即f(l)≥0 时说明存在更优解通过二分即可求出最优解这里解释一下为什么要去掉前k个分数:a
2022-05-01 23:27:31
538
原创 D. Twist the Permutation
D. Twist the PermutationinputCopy363 2 5 6 1 433 1 285 8 1 3 2 6 4 7outputCopy0 1 1 2 0 4 0 0 1 0 1 2 0 2 5 6 2 总感觉哪年省赛好像有类似的题,水一波题解题意给你n个数的数组,问你能否通过循环数组还原到1-n ,这里的循环数组是从1号位到当前位进行循环,求每位需要循环操作多少次才能还原到1-n递增排列(输出总次数最少的一个答案)思路:我们可以从最后一项开始往前
2022-04-29 16:22:47
430
原创 RMQ维护区间最大值 O(nlogn)
AcWing 1273. 天才的记忆Source:AcWing or 《信息学奥赛一本通》从前有个人名叫 WNB,他有着天才般的记忆力,他珍藏了许多许多的宝藏。在他离世之后留给后人一个难题(专门考验记忆力的啊!),如果谁能轻松回答出这个问题,便可以继承他的宝藏。题目是这样的:给你一大串数字(编号为 1 到 N,大小可不一定哦!),在你看过一遍之后,它便消失在你面前,随后问题就出现了,给你 M 个询问,每次询问就给你两个数字 A,B,要求你瞬间就说出属于 A 到 B 这段区间内的最大数。一天,一位美
2022-04-27 00:13:04
855
原创 H. Maximal AND【二进制+思维】
input43 22 1 17 04 6 6 28 6 6 121 3004 43 1 3 1output2421474836461073741825题意是给你 n, k 让你进行最多k次操作 使得整个数组 & 操作得到最大值关于每次操作 你可以改变数组中某个数的某个二进制位变为 1一开始一直用 | 操作进行模拟,但是后来一直控制不了次数,无奈瞟了眼题解~~~没能AK TAT思路:我们首先统计 二进制中 0-30 位每位有多少个 1,要想 &.
2022-04-26 09:39:39
500
空空如也
配置python path环境变量时为什么放在最后面会报错,放在第一位就可以了呢?
2022-05-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人