舒一笑不秃头
生成式AI应用工程师(高级)认证 | 阿里云博客专家 | Java应用开发职业技能等级认证
境是人非叶落处,焕景深处已向春~
代码是我的文字,程序是我的诗篇,我不是程序员,我是诗人。大浪淘沙,去伪存真,破后而立,否极泰来。
真正的有所成,只能是慢慢来...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
异步上传石墨文件进度条前端展示记录(采用Redis中List数据结构实现)
摘要:Redis存储异步任务状态的数据结构选择与实践 本文探讨了异步任务状态存储在Redis中String与List数据结构的优劣对比及实践方案。String结构存在历史记录缺失、并发处理复杂、功能局限等问题;而List结构更适合需要完整历史记录、顺序处理、分布式任务的场景。文章提出了一个基于List结构的实现方案,包括状态记录工具类设计、进度更新方法和清理机制,强调直接存储对象而非JSON以避免并发问题。通过Java的this引用特性简化对象存储操作,实现了高效可靠的任务状态管理。原创 2025-05-29 21:11:20 · 339 阅读 · 0 评论 -
Maven踩坑记录与反思
首先,目前技术团队使用Maven私服为Nexus,但是具体配置的账号密码。前同事与我交接过程中并没有给我,老板与我再三联系都杳无音信。讲真的此刻的内心是:但是没有办法,事情既然已经发生。后续老板也与我进行沟通,单独谈了此事。既然联系几次之后都毫无回应,但是问题肯定是需要进行解决。假如现在的我一直纠结于对方何时会给我们反馈,这件事是一个件不确定事情。作为一个研发人员,假如想从事以后能做解决方案架构师角度,肯定是需要进行另寻他路。原创 2025-03-08 15:13:31 · 125 阅读 · 0 评论 -
使用Let’s Encrypt 配置 SSL 证书去除浏览器不安全告警
执行完上述命令之后会提示你输入一下自己的邮箱信息等等然后会给你两个TXT的值类型,需要将这两个值配置在你自己的云服务DNS解析中,我这里以阿里云DNS为例。配置解析值时候需要注意自己购买的云厂商的解析规则,例如这里阿里云DNS是默认会带上你的一级域名,因此在书写配置时候就不用写了。经过我的验证这边虽然是免费的ssl认证给你白嫖三个月,但是如果你上述解析配置正确的话还是认证发证书很快的。然后后续的话需要在nginx中配置自己的一下证书信息,下面展示一下我的nginx配置。使用命令查看一下证书文件是否存在。原创 2024-09-14 19:14:35 · 956 阅读 · 0 评论 -
一笑插件 v1.0.2:中文类名转英文+自动生成代码注释,IntelliJ IDEA 必备!
直达链接新增支持在设置的编辑器中,文件和代码模板设置里面配置类的文件信息。配置好之后就可以在新建的文件中得到配置的信息。原创 2024-09-08 19:43:27 · 252 阅读 · 0 评论 -
K8s中如何使用etcd进行集群信息的备份与恢复
这里需要注意一下就是,经过多次尝试之后,默认会存在两个容器的信息,如果后续涉及更新需要将原先旧的信息进行停止和删除,不然容器不能自己重启因为没有位置了。在status 后面跟上备份文件的信息即可,本地备份文件名称是etcd-snapshot.db,所以命令如下,执行这个命令需要在文件所在的目录下。这里需要说明一下的是etcdctl以及在近期的版本中弃用了,所以这边我们采用etcdutl工具进行备份的操作。这里需要说明一下的是,安装好K8s集群之后,在Master节点的机器上是会自带一个etcd服务。原创 2024-09-06 16:41:40 · 1111 阅读 · 0 评论 -
做开发一年多了,分享一下自己的疑惑以及大模型给我的一些建议~
程序员的职业发展路径有很多种,关键在于找到最适合自己的方向。保持学习的态度,不断提升自己,同时也要保持对工作的热情和对生活的平衡,这样才能在职业发展的道路上走得更远、更稳。即便现在的工作环境让你觉得迷茫和无奈,通过不断的自我提升和规划,仍然有很多机会和可能性等着你去发掘和实现。我想以后能成为自由开发者,真正做一些自己喜欢且有用的东西,我相信开发者是改变世界的,而不是在一些项目型的工作做着付出和收入完全不成正比的工作,你觉得我应该从哪些方面开始准备?成为自由开发者是一个充满挑战和机遇的目标。原创 2024-09-03 19:51:21 · 288 阅读 · 0 评论 -
如何为你的jar包上保险,防止别人反编译获取代码。Jar混淆全网最详细教学
网址链接:https://github.com/skylot/jadx这里使用的是这个软件,由于是国外的而且收费,比较麻烦的是这个还需要使用公司等商用的邮箱进行注册认证,免费邮箱不好使,获取花钱不说还很麻烦,但是这里有一个好消息是一笑给大家准备好了,关注公众号,搜索:舒一笑的架构笔记。ZKM软件获取。就可以获得软件,需要注意一下我提供的软件需要使用JDK17才能运行。原创 2024-08-28 19:49:38 · 255 阅读 · 0 评论 -
IDEA中如何配置Gradel加速与相关依赖找不到如何解决?
如果这篇文章对您有所帮助,或者有所启发的话,帮忙扫描下发二维码关注一下,您的支持是我坚持写作最大的动力。关注公众号:【舒一笑的架构笔记】,在公众号中回复:面试、代码神器、开发手册、时间管理有超赞的粉丝福利,另外回复:加群,可以跟很多BAT大厂的前辈交流和学习。原创 2024-08-18 11:32:57 · 270 阅读 · 0 评论 -
我的创作纪念日
回想起最初成为优快云博主的初心,我想这份机缘源于我的实战项目经验分享。在项目开发过程中,我遇到了各种各样的问题和挑战,每一次解决这些问题,都是一次宝贵的学习机会。为了更好地记录这些学习成果,并与更多的人分享,我决定开始写博客。此外,我在日常学习过程中积累了不少有价值的笔记,觉得与其让它们“沉睡”在个人电脑里,不如通过文章进行技术交流,让更多人受益。这也是我成为创作者的重要动力之一。原创 2024-05-15 16:50:58 · 418 阅读 · 0 评论 -
使用Docker+Jar方式部署微服务工程(前后端分离)看着一篇就够了
首先在执行jar之后需要注意服务器中的Java版本需要和本地开发环境的版本保持一致。配置Nacos的时候,如果需要切换不用默认的数据源一定需要在配置文件中指明。在配置Nginx监听的时候需要注意将监听的root地址一定要配置和dockerfile打包地址一致不然会出现报错,如果采用微服务的方式访问需要在配置文件中明确正确配置断言的网关地址。如果这篇文章对您有所帮助,或者有所启发的话,帮忙扫描下发二维码关注一下,您的支持是我坚持写作最大的动力。原创 2024-05-13 22:32:09 · 2195 阅读 · 0 评论 -
如何判断一个服务是否适合于公司项目使用
判断一个服务是否适合公司项目使用是一个涉及多方面因素的决策过程。这个过程通常包括对服务的全面评估,确保它能够满足项目的需求、与公司的技术栈兼容,并且从长远来看是经济效益和安全性的最佳选择。原创 2024-04-22 23:10:37 · 390 阅读 · 0 评论 -
因为工作安排让我写SQL,我带上了“痛苦面具”
事情是这样子的,公司内部需要部署BI看板系统,因此在多方资源的协调和商定之下,一致选择了国内开源的工具DataEase,本来的一切都很美美好,源码方式部署服务,进行公司UI个性化修改一切都算是我的舒适圈。但是当服务部署完成之后需要写复杂SQL语句去查询数据,噩梦开始了。有一说一这个看板看起来真的不错,但是看到需要展示的数据和SQL与数据之间的距离之后我呆住了。给大家看一下原型的效果,简直是需要落泪了。看着这个需要展示的数据还是挺美丽的。但是当我见到需要写的SQL之后。痛苦面具之后我的思考。原创 2024-04-15 23:34:48 · 385 阅读 · 1 评论 -
全网最最最详细DataEase-V1.8源码Docker方式部署教程
配置启动类配置处的配置文件信息,由于是在windows的环境中,下图是Linux中的文件写法,因此偷懒一些可以直接就是在windows的项目的根路径下建立相似的路径文件信息即可,详情见下图。修改前端登录页面路由的代理信息为自己本机的ip,方便启动项目后同网段下的同事能直接查看你的前端页面效果(PS:这块应该有更加好的实现方式,开发验证效果就先这样子写了)有条件的小伙伴可以使用GitHub方式获取,要是没有条件的小伙伴可以去码云上面获取也是一样的,或者可以联系博主,博主手把手教学~分别打包前后端文件资源。原创 2024-02-27 10:09:01 · 2585 阅读 · 4 评论 -
打包Docker镜像时候,ARG标签如何使用?
在Dockerfile中使用ARG指令是为了定义一个变量,其值可以在构建Docker镜像时通过命令的参数进行设置。这使得Docker镜像的构建过程更加灵活和可配置。在您给出的Dockerfile片段中,定义了一个名为IMAGE_TAG的变量,它的值可以在构建镜像时指定,而且在Dockerfile中的其他位置,如添加jar文件到镜像中时,可以引用这个变量。原创 2024-02-26 21:39:57 · 618 阅读 · 0 评论 -
当Vue项目启动后,通过IP地址方式在相同网络段的其他电脑上无法访问前端页面?
默认情况下,许多开发服务器(如Vue CLI的)只监听localhost(127.0.0.1),这意味着它们只能接受来自本机的连接。为了使其能够接受来自网络上其他设备的连接,需要配置服务以监听所有网络接口(0.0.0.0)。:Windows或其他操作系统的防火墙可能阻止了对应用程序使用的端口的访问。如果服务正在运行,但其他设备无法连接,可能需要配置防火墙以允许外部设备访问该端口。:确保所有设备都连接到同一网络,并且没有子网或VPN配置阻止它们之间的通信。原创 2024-02-26 21:36:27 · 2731 阅读 · 0 评论 -
office的excel中使用,告诉我详细的解决方案,如何变成转化为金额格式
请注意,"MEREFIELD"公式本身并非Excel的标准函数,因此这里的假设是你已经有了一个名为MEREFIELD的自定义函数或者这是一个特定于你工作环境的函数。如果"MEREFIELD"是指某种特定的计算或操作,请确保其已经正确实现并能够在你的Excel环境中运行。通过以上步骤,你可以将MEREFIELD公式的结果转换为金额格式,以便更清晰地表示财务数据。原创 2024-02-19 20:29:29 · 973 阅读 · 0 评论 -
AES加密后的密码可以破解吗
如果密钥管理不当(例如,密钥泄露或被猜测到),或者加密实现存在漏洞,则加密的数据可能会被破解。它被认为是非常安全的,到目前为止,没有已知的可行方法能够有效破解使用AES加密的数据,前提是实现得当且密钥保密性得到妥善管理。破解AES加密理论上是可能的,比如通过蛮力攻击(尝试所有可能的密钥组合),但是给定足够长的密钥,这种攻击方式在实际中是不可行的。综上所述,虽然理论上AES加密是非常安全的,但在实际应用中,加密系统的安全性取决于多种因素,包括密钥管理、加密算法的实现、系统的整体安全架构等。原创 2024-02-12 22:46:35 · 4154 阅读 · 0 评论 -
MMDB是什么
MMDB (MaxMind DB) 是一种专为地理位置服务和其他网络相关数据设计的二进制文件格式。这种格式主要被用于存储如 IP 地址定位数据之类的信息,使得应用程序可以快速且高效地查询 IP 地址的地理位置、自治系统信息、网络提供商信息等。MMDB 格式由 MaxMind 公司开发,该公司最著名的产品是 GeoIP 数据库。原创 2024-02-04 08:53:56 · 2456 阅读 · 0 评论 -
项目与工程的关系,是一个项目包含若干个工程还是一个工程包含若干个项目?
在很多情况下,一个项目是指为达到特定目标而进行的一系列活动和工作的总和。在项目管理和工程管理的领域里,项目(Project)和工程(Engineering)通常有不同的定义和关系,这取决于具体的行业和应用背景。总的来说,一个项目可以包含若干个工程,但也可能存在一些特殊情况,其中一个工程就是一个完整的项目。:项目管理通常关注整个项目的规划、执行、监控和完成,涉及范围广泛的管理活动。:在某些情况下,特定的工程活动(如建筑一个桥梁)可以是更大项目(如发展一个新的交通系统)的一部分。原创 2024-01-11 19:57:16 · 1687 阅读 · 0 评论 -
如何实现在md文档上展示个性图标
【代码】如何实现在md文档上展示个性图标。原创 2024-01-11 19:51:15 · 978 阅读 · 0 评论 -
CPU的物理核心和逻辑核心有什么区别
总体而言,物理核心是实际的硬件处理单元,而逻辑核心是通过超线程等技术在物理核心上创建的虚拟处理单元。在某些工作负载下,逻辑核心可以提高处理器的线程并行度,但并不总是等同于物理核心的性能。超线程技术的效果取决于具体的应用程序和工作负载。CPU(中央处理器)的物理核心和逻辑核心是两个不同的概念,它们在处理器的设计和功能上有一些区别。原创 2023-11-23 10:38:46 · 2902 阅读 · 0 评论 -
SDK是什么
SDK 通常包括一组开发工具、库、文档和示例代码,以帮助开发者更快地开发和部署应用。开发者使用 SDK 来创建特定类型的应用,例如,Android SDK 用于开发 Android 应用,iOS SDK 用于开发 iOS 应用,而游戏开发者可能会使用 Unity 或 Unreal Engine 这样的游戏开发 SDK。使用 SDK 的好处是它提供了一套标准化的开发工具和资源,这可以大大减少开发时间和成本,提高开发效率,并确保应用的兼容性和稳定性。:展示如何使用 SDK 开发应用的实例和指导。原创 2023-11-02 21:50:33 · 1437 阅读 · 0 评论 -
WebService与RESTful两种接口风格示例
在SOAP WebService例子中,客户端和服务端通过交换XML格式的SOAP消息进行通信,请求和响应都遵循SOAP协议的格式。在RESTful API例子中,客户端通过标准的HTTP方法(在这个例子中是GET)和URL进行通信,传递参数和接收结果都是通过HTTP协议的标准机制(如查询参数、状态码和消息体)完成的。数据通常以JSON格式传输,使其更加简洁和易于解析。原创 2023-10-31 19:28:41 · 436 阅读 · 0 评论 -
WS-*标准是什么,有什么作用
WS-*标准是一组基于SOAP协议的Web服务规范,目的是提供一种在分布式环境中实现可互操作的端到端服务的方式。这些标准通常由不同的组织和公司提出,并得到了业界广泛的支持和应用。WS-*标准涵盖了从消息传输、安全性、事务处理到服务描述等多个方面。原创 2023-10-31 19:26:48 · 665 阅读 · 0 评论 -
SOAP协议是什么协议,有什么作用
SOAP(Simple Object Access Protocol)是一种基于XML的协议,用于在网络上进行信息交换。它是一种轻量的协议,旨在进行分布式计算环境中的通信。SOAP可以通过各种下层协议来传输,但最常用的是HTTP。原创 2023-10-31 19:25:38 · 431 阅读 · 0 评论 -
WebService接口方式和Restful接口这两者有什么区别和相同点
WebService和RESTful接口都是用于在网络上进行通信和数据交换的技术,但它们在设计和使用上有一些重要的区别和相似之处。原创 2023-10-31 19:23:40 · 3110 阅读 · 0 评论 -
WebService接口方式是什么
WebService是一种在网络上提供服务的方式,它允许不同的应用程序在网络上进行交互和通信,无论它们是用什么编程语言编写的,或者运行在什么操作系统上。业务应用系统指标采集采用WebService接口方式,这表明系统通过WebService这种网络服务的形式来收集和交换业务应用的运行指标和数据。:随着业务的发展和变化,可以在不影响现有系统和应用的基础上,通过添加新的WebService接口或修改现有接口来扩展功能。:可以根据需要设计和调整WebService接口,以满足不同的业务需求和场景。原创 2023-10-31 19:21:25 · 237 阅读 · 0 评论 -
毕业工作之后,没有在学校中考试排名这种方式,那如何确定自己是不是一直在退步还是在进步
在职场中衡量自己是否在进步或者退步,相较于学校里通过考试排名来判断要复杂得多。因为职场的评价标准更为多样,同时还涉及到个人职业发展、工作满意度等方面。原创 2023-10-30 23:35:40 · 137 阅读 · 0 评论 -
如何能够根据现有业务,结合代码清晰的知道技术实现是如何去实现的,方法论和切入点是什么?
在理解了系统的大致架构和组件划分后,你可以深入到具体的代码实现层面,按照数据流或者调用链路逐层深入,了解每个模块的具体实现方式。首先查阅相关的技术文档和设计说明,这些文档通常会详细描述系统的架构、各个组件的作用、数据流转的方式等。通过构造不同的测试用例,观察系统在不同输入条件下的行为,可以帮助你验证自己对系统行为的理解是否准确。选择正确的切入点非常关键,这通常取决于你要解决的问题或者你要理解的功能。利用互联网,你可以搜索相关技术栈的最佳实践、类似功能的实现方案等,以获得更广泛的视角和思路。原创 2023-10-30 22:32:11 · 153 阅读 · 0 评论 -
钉钉超过90天的文件需要一分钟重新激活的实现原理是什么?
热数据是经常被访问的文件,这些文件会被存储在快速的存储设备上,以便快速访问。访问延时:当用户再次访问这个超过90天没有被访问的文件时,系统需要从冷数据存储中检索文件,并可能需要进行一些额外的操作,比如数据校验、解压缩等,这个过程需要一定的时间,因此用户需要等待。资源优化:通过这种机制,系统能够确保高频访问的文件能够快速访问,而低频访问的文件不会占用过多的高速存储资源,从而优化整体的存储资源使用。数据迁移:当文件超过90天没有被访问时,系统会将文件从热数据存储迁移到冷数据存储,这个过程可能需要一定的时间。原创 2023-10-30 22:26:38 · 1475 阅读 · 0 评论 -
如何做好一次代码审查,什么样是一次优秀的代码审查,静态代码分析工具有哪些
代码审查是确保代码质量、提升团队协作效率、分享知识和技能的重要过程。原创 2023-10-28 20:59:58 · 284 阅读 · 0 评论 -
如何能够在发现问题和提问的时候一并带出自己的解决方案
通过这些步骤,你不仅能够在提出问题的同时提出解决方案,还能展示你的主动性和解决问题的能力,增加团队协作的效率和效果。原创 2023-10-28 20:02:57 · 325 阅读 · 0 评论 -
如何能在项目具体编码实现之前能尽可能早的发现问题并解决问题
在项目的具体编码实现之前尽可能早地发现并解决问题,可以大大节省时间和资源,提高项目的成功率。原创 2023-10-28 20:01:25 · 361 阅读 · 0 评论 -
如何在存量市场的情况下,增加自己作为求职者的个人影响力和项目或部门内部的个人存在感
通过这些方式,你可以在存量市场的情况下增强自己作为求职者的个人影响力,同时在项目或部门内部提升个人的存在感。:通过在线平台如LinkedIn展示自己的工作成果和项目经验,让潜在的雇主能直观地了解到你的能力和成就。:在团队中展示你的领导能力,即使你不是团队的正式领导,也可以通过引导讨论和协调资源来展示你的领导潜质。:展示你对个人发展和持续学习的承诺,这不仅能增强你的个人能力,也能提升你在团队中的地位。不要害怕表达自己的想法。:主动承担责任,完成自己分内的工作,并在可能的情况下提出承担更多责任的意愿。原创 2023-10-28 19:28:18 · 105 阅读 · 0 评论 -
项目组内季度工作汇报会议上,领导说希望汇报者能多说说自己的工作感受,背后有哪些含义
总的来说,领导希望汇报者多谈工作感受可能是出于对员工福利的关心、对工作流程的优化、对团队凝聚力的增强以及对文化建设的重视等多方面的考虑。:领导可能希望了解员工的工作状态和情绪,以便更好地关心员工的福利和工作环境,创造一个更加积极和健康的工作氛围。:通过了解员工在工作中的感受和遇到的困难,领导可能想寻找工作流程中的不足之处,以便进行改进和优化。:了解并重视员工的感受有助于提升员工的满意度,进而可能提高员工的工作效率和创造力。:让员工谈论自己的工作感受可以强化他们对工作的责任感和归属感。原创 2023-10-28 19:24:51 · 112 阅读 · 0 评论 -
Java中作为数据库某个表的实体类为什么一定要实现Serializable接口
在Java中,实体类并不一定要实现接口来作为数据库的某个表的映射。这个接口的实现主要与对象的序列化和反序列化相关。序列化是指将对象的状态信息转换为可以存储或传输的形式的过程。在反序列化过程中,这些信息可以用来重构原始对象。下面是实现: 如果你在使用分布式系统,并且需要在网络上发送对象或者通过RMI(Remote Method Invocation)调用远程对象的方法,那么这个对象需要是可序列化的。: 当你想要缓存对象,以便快速检索而不是重新创建它们时,通常需要将对象序列化到磁盘或数据库中。实现。原创 2023-10-28 16:02:55 · 567 阅读 · 0 评论 -
@TableField(fill = FieldFill.INSERT)这个注解的作用
是 MyBatis-Plus提供的一个注解,用于标注实体类的属性与数据库表的字段之间的映射关系。当你在一个实体类的属性上使用。设置了值,它都会在插入数据库时被自动填充为当前时间。这样可以确保数据的一致性,并且简化了插入操作的代码。字段被标注为在插入操作时自动填充。为了实际实现这个自动填充,你需要定义一个实现了。注解时,你告诉 MyBatis-Plus 在插入记录时自动填充这个字段。是一个枚举值,表示只在插入操作时进行字段的自动填充。方法来指定当插入操作发生时,对象时,无论你是否为。原创 2023-10-28 15:52:47 · 2287 阅读 · 0 评论 -
@TableLogic 这个注解的作用
逻辑删除并不是真正从数据库中删除记录,而是通过在数据库表中设置一个标记字段(通常是一个状态字段,如 is_deleted、status 等)来表示这条记录是否被删除。使用逻辑删除功能可以使数据恢复变得容易,因为数据并没有真的被删除,但也要注意,这可能会导致数据库中存储了大量的无用数据,影响查询性能。当你调用删除方法时,MyBatis-Plus 不会真的从数据库中删除对应的记录,而是将。是 MyBatis-Plus(一个 MyBatis 的增强工具)提供的一个注解,用于实现逻辑删除功能。字段的值为 “1”。原创 2023-10-28 15:46:32 · 1229 阅读 · 0 评论 -
如何学习能减少对现有工作的依赖?
减少对现有工作的依赖需要你提升自己的技能和能力,并拓宽你的职业选择。通过不断学习和发展自己的能力,你将能够提升你的职业竞争力,并减少对现有工作的依赖。: 扩大你的职业网络,这不仅可以为你提供学习资源,还可以帮助你发现新的职业机会。: 考虑发展副业或者投资,以增加你的收入来源,并减少对单一工作的依赖。: 确定你目前的技能和兴趣,并识别哪些领域你可以提升或学习新的技能。: 学会有效管理你的时间,确保你有足够的时间来专注于学习和发展自己。: 定期评估你的学习进度,并根据需要调整你的学习计划和目标。原创 2023-10-25 23:11:09 · 344 阅读 · 0 评论 -
使用Java做业务开发,如何做好一个定时任务的技术选型?
如果你的公司或团队已经有现成的任务调度平台(如Airflow、Azkaban等),那么直接使用这些平台可能会是更好的选择,因为它们通常提供了更为丰富和完善的功能,以及更好的可视化和监控能力。综上所述,选择合适的定时任务技术和工具需要根据你的具体需求和资源情况来综合判断。在Java环境中,有许多优秀的框架和工具可供选择,因此你可以根据上述建议来做出合适的决策。原创 2023-10-25 21:13:02 · 307 阅读 · 0 评论