自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Js 主线程和异步队列哪个先执行

JavaScript 是单线程语言,通过事件循环(Event Loop)机制来处理同步和异步任务。

2025-03-29 20:00:25 478

原创 你竟然还不会 AI 写 ppt

帮我生成一份《新能源汽车市场分析》PPT大纲,包含5个章节,每章3个要点。“生成2020-2023年全球新能源汽车销量数据,格式为表格。:实际图片需替换为工具真实界面截图,本示例使用占位图。(图示:DeepSeek界面与Kimi导入框对比)(图示:Kimi模板选择页面与生成按钮位置)“请用数据+案例说明,避免理论描述。(图示:编辑界面拖拽操作与导出选项)

2025-02-25 09:06:56 872

原创 对象转来转去你烦不烦

是一种用于简化 Java 对象之间转换的工具,特别是当你需要在 DTO (Data Transfer Object)、实体类和业务层对象之间进行映射时,在实际开发中,可以根据项目需求选择是否使用 MapStruct,尤其在 DTO 和实体类之间频繁转换的项目中,它是一个非常实用的工具。框架可以自动生成高效的对象映射代码。框架的详细介绍及其使用示例。当字段名不同但语义相同(如。在现代 Java 开发中,

2024-12-09 21:43:46 295

原创 Transactional 直接放在接口方法和类方法有什么不同

【代码】Transactional 直接放在接口方法和类方法有什么不同。

2024-11-27 17:57:50 377

原创 依赖注入的不同方式

Autowired是 Spring 独有的注解,功能强大且灵活,适合 Spring 项目。@Resource更偏向 Java 标准,适用于需要按名称注入的场景,且在与非 Spring 环境的兼容上表现更好。@Inject是 Java 标准的一部分,与 Spring 集成良好,但功能上相当于简化版的@Autowired。根据项目需求选择合适的注解,同时考虑可读性和团队的开发习惯。

2024-11-25 09:05:44 315 1

原创 Jir 关联 agit

如果需要更复杂的自动化流程,可以通过配置 Webhooks 或使用 CI/CD 工具(如 Jenkins、GitHub Actions)配合 Jira API 来实现更多自定义操作。

2024-11-23 08:31:35 560

原创 BugJson因为json格式问题OOM怎么办

核心在于加强输入校验、合理配置 FastJSON 并考虑安全模式。此外,必要时使用流式处理或更安全的替代库,以提升系统的稳定性和安全性。

2024-11-22 23:59:39 965

原创 mysql 的乐观锁和 mvcc 是一回事吗

MySQL 的乐观锁和 MVCC(多版本并发控制)是两个不同的概念,尽管它们都涉及到并发控制和数据的一致性,但在设计目的和实现方式上存在本质区别。乐观锁是一种用于解决并发更新冲突的控制机制。它假设数据在大部分情况下不会发生冲突,因此允许多个事务自由读取数据,只有在更新时才进行冲突检测。如果version不匹配,则表示数据已被修改,更新失败。MVCC 是一种数据库引擎内部实现的并发控制机制。它通过维护数据的多个版本来支持高并发事务,使读操作和写操作之间不直接阻塞。

2024-11-18 09:33:49 607

原创 Java 查看死锁命令

是一个 JDK 提供的命令行工具,可以生成 Java 进程的线程栈快照。它能够显示线程的状态和锁信息,从而帮助定位死锁。是一款可视化分析工具,它可以在运行时分析 Java 应用程序的线程状态并检测死锁。是一个更为通用的命令行工具,可以查看进程的详细信息,包括线程信息、死锁检测等。是 Java 自带的图形化监控工具,可以用来查看线程的运行状态。在生成的线程栈快照中,查看是否有死锁信息。会自动检测死锁,并在检测到时显示相关信息。找到 Java 进程的 PID,可以使用。中可以查看死锁信息。

2024-11-14 13:36:23 533

原创 常用的银行反欺诈规则引擎

这些规则引擎具有不同的特性和适用场景,适用于不同规模和复杂度的银行反欺诈系统,可以根据具体的需求选择合适的解决方案。

2024-11-13 12:31:14 429

原创 idea 解决缓存损坏问题

错误通常出现在 IntelliJ IDEA 的缓存文件损坏时。这种情况下,删除缓存文件可以有效解决问题。这样做会删除所有缓存数据,包括索引文件、编译输出等,有助于清除潜在的缓存问题。双十一刚剁完手,打开 idea 突然报错如下。:在清理缓存之前确保关闭 IDEA。如果问题仍然存在,可以尝试。

2024-11-13 10:04:59 719

原创 凭啥工具类不让实例化

在Java中,工具类(Utility Class)通常是指包含一组静态方法的类,这些方法通常用于执行一些通用的操作,比如字符串处理、数学计算、日期时间操作等。因此,为了避免上述问题,工具类通常被设计为不可实例化,或者至少不鼓励实例化。:工具类的设计初衷就是提供一组静态方法,这些方法可以在不创建对象的情况下被调用,这样可以减少内存消耗,因为不需要为每个方法调用创建一个新的对象实例。:在某些情况下,如果工具类被错误地实例化,并且持有了对其他对象的引用,可能会导致内存泄漏,因为这些对象不会被垃圾回收器回收。

2024-10-24 07:53:07 212

原创 除了了轮询,怎么获取最新数据

WebSocket 是一种全双工通信协议,允许服务器和客户端之间保持一个长连接,并能在数据有更新时由服务器主动推送给客户端。客户端向服务器发送请求,服务器在有数据更新之前不会立即响应,直到有新的数据更新时才返回结果。它基于 WebSocket,实现了在客户端订阅某些数据变化,当变化发生时,服务器会主动通知订阅的客户端。SSE 是一种基于 HTTP 协议的服务端推送技术,它允许服务器向客户端推送实时更新的数据。与 WebSocket 不同,SSE 是单向的,适用于服务器单向向客户端推送更新的场景。

2024-10-16 06:59:55 396

原创 文字转语音 demo|给出一个成语生成语音传到 oss

需求:给出一个成语生成语音传到 oss。

2024-10-12 09:21:38 214

原创 Java 循环里怎么删除元素才安全

在 Java 中,当你在循环中遍历集合时,直接删除元素可能会引发。这种方法不会在遍历中直接删除元素,而是创建一个新的过滤后的集合。为了安全地删除元素,推荐使用。

2024-10-11 07:38:19 459

原创 老板又整事|Java 程序员怎么快速接手 php 项目

程序员就是牛马

2024-10-09 10:18:49 799

原创 Jenkins 部署前端代码

来自动化部署前端代码时,通常会将 Jenkins 配置为一个自动化流水线,当代码被推送到代码仓库时,Jenkins 会自动执行构建流程,并将前端代码打包后上传到阿里云 OSS 上,这里也可选择七牛云。供静态资源托管使用。阿里云官方提供了 OSS Jenkins 插件,你可以使用该插件自动将打包后的文件上传到阿里云 OSS。如果你不想使用 Jenkins 插件,也可以通过阿里云提供的命令行工具。目录),这个目录就是需要上传到阿里云 OSS 的内容。使用项目对应的打包命令(如 Vue 项目的。

2024-09-30 10:19:00 1079

原创 边学英语边学 Java|Synchronization in java

Java 同步用于确保通过某种同步方法,在给定的时间点只有一个线程可以访问资源。为了向某人解释 Java 中的同步,我们可以使用一个简单的类比并指出一些相关的计算机词汇。

2024-09-23 16:06:03 714

原创 Java 怎么调摄像头

调用 USB 摄像头的方式大多依赖于系统的 VideoCapture 类,例如前面提到的 OpenCV 提供了良好的接口。对于多摄像头场景,可以通过传递不同的设备 ID(如。根据具体应用的需求,选择合适的库和协议来实现功能。条码识别(包括 QR 码)可以结合摄像头获取图像,再通过图像处理和解码算法实现。这些库可以处理通过串口发送的 ASCII 或二进制数据。网口设备(如网络秤或基于 TCP/IP 协议的设备)可以通过 Java 的。对于串口设备(如条码扫描器、秤等),可以使用 Java 的。

2024-09-19 08:52:07 953

原创 如果被提升技术主管你该做点啥

假如有一天,你突然被提升技术主管,你该做什么?

2024-09-18 22:30:08 768 1

原创 一边学英语|一边学 Java

MyBatis是一个面向Java的ORM(对象-关系映射)框架,但与Hibernate不同的是,它允许开发人员编写自定义SQL查询。JDK是Java Development Kit的缩写,用于开发Java应用程序。JRE代表Java运行时环境,它提供运行Java应用程序所需的库和环境。JVM代表Java虚拟机,它是运行Java字节码并使Java独立于平台的核心组件。Spring Boot是一个很棒的框架,它简化了组件的配置。它提供了自动配置,可以快速设置Spring应用程序,而无需手动配置每个组件。

2024-09-10 22:23:47 560

原创 单店电商系统改造 saas平台二

在SaaS电商系统中,多租户的入口是非常关键的一个模块,尤其是在开店功能方面。开店模块是商户入驻平台的入口,通过这个模块可以实现新租户(即商户)的注册、配置、初始化等功能。以下是如何设计和实现一个面向多租户的开店模块的关键步骤:目标:实现步骤:实现要点:目标:实现步骤:实现要点:目标:实现步骤:实现要点:目标:实现步骤:实现要点:目标:实现步骤:实现要点:目标:实现步骤:实现要点:目标:实现步骤:实现要点:

2024-09-09 12:27:54 1122

原创 单店电商系统怎么改造成 saas 平台一

将一个单店电商系统重构为SaaS

2024-09-09 12:25:52 898

原创 外包公司就是搅屎棍

听朋友说,最近Java 开发就业环境可谓是惨不忍睹,但是我发现一个现象,就是项目其实并不少,而且很缺人的情况下,企业自己降本增效会选择外包驻场,但是外包公司为了降低成本使劲压榨工资甚至只开短期合同和外务(不带社保)。这样,企业项目抓不到人做,很多就业者也很那自降身价去迎合外包公司的无耻行为。这就加剧了供需关系的紧张,明明有需求和有市场,就是中间有个搅屎棍。就看谁能更刚一点吧。

2024-09-09 12:08:48 157

原创 国内低代码平台有哪些

国内有很多优秀的低代码平台和框架,它们各有特色,适用于不同的业务场景和需求。

2024-09-09 12:03:09 557

原创 一些免费电子书地址总结

提供超过60,000本免费的电子书,主要是版权过期的经典文学作品,适合读者下载各种格式的书籍(如EPUB、Kindle格式等)。是由互联网档案馆(Internet Archive)运营的项目,拥有海量的免费电子书,可以在线阅读或下载。提供大量的图书预览和一些完整的免费书籍,尤其是那些已经进入公共领域的作品。提供免费的有声书籍,尤其是那些版权过期的经典作品,适合喜欢听书的人。提供经过校对和格式优化的经典公共领域书籍,适合需要高质量文本的读者。提供公共领域的书籍和原创作品,用户可以免费下载不同类别的书籍。

2024-09-08 20:34:01 577

原创 jvm监控工具一览

用于生成堆转储(heap dump),以及显示内存使用情况,适用于内存问题的分析,比如内存泄漏或 GC 问题。:用于查看和设置运行中的 JVM 的配置信息,比如系统属性和 JVM 选项,适用于 JVM 参数调优和问题诊断。:无侵入式的动态监控工具,可以实时插入脚本进行方法追踪、字段访问等操作,适用于各种动态监控需求。:实时显示 JVM 性能统计信息,包括 GC、内存、类加载等信息,常用于性能监控和调优。:用于输出 JVM 当前所有线程的堆栈跟踪信息,帮助分析线程状态、死锁等问题。

2024-08-22 08:25:34 434

原创 你真理解反向代理吗?

🔄 反向代理:代理服务器接受internet连接请求,转发给内部服务器,返回结果给客户端。🏢 反向代理类比:服务器的代理,像二房东帮助房东租房,隐藏服务器真实IP,提供负载均衡、安全防护和加速访问服务。🏠 类比:正向代理像租客通过中介联系房东租房,隐藏客户端真实IP,提高访问速度,解决访问限制问题。🔁 区别:正向代理是客户端代理,反向代理是服务器代理,目的和作用不同,但都能提高访问速度和安全性。🌐 正向代理:位于客户端和目标服务器之间的服务器,帮助客户端访问无法直接访问的资源,如国外网站。

2024-08-12 09:10:11 192

原创 docker stop pause 区别

Linux中的控制组(cgroup)子系统,可以冻结(暂停)和解冻(恢复)cgroup中的所有进程。冻结 cgroup 中所有进程的状态,而不终止它们。进程停止运行,但它们仍保留在内存中。

2024-08-09 09:56:40 446 1

原创 为什么外网需要我允许Cookie

cookie,其复数形式为Cookies。这个单词原意为“小甜饼”,在网络技术当中指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。这个网络术语并没有一个正式的中文译名,大家都直称其Cookie(s)。🍪 外国网站访问时常见的对话框,需点击“我同意”,涉及到 Cookie。🖥️ Cookie 是网站存储在用户本地终端上的数据,用于识别用户身份。💼 Cookie 让浏览器记住用户购买信息、登录信息,提升用户体验。

2024-04-07 11:26:32 810

原创 一文搞懂用户认证方案怎么做

一般网站用户认证不外乎以下步骤:以上单机版基本没问题,但是分布式系统中涉及到 session 共享问题,比如 项目部署在serviceA 和 serviceB。用户登录后 sessionId 存在 serviceA 内存中,这个时候如果 a 挂掉了(lb 打到 b 服务器也有可能),你再请求服务器 b,发现sessionId不存在,直接让你重新登录了。首先,问题的根源出在sessionId无法共享上,想要把sessionId共享,一个简单的思路就是把sessionId保存到数据库中(这里选择redis)

2024-04-03 19:31:20 1658

原创 Zookeeper 怎么实现分布式锁

基于ZooKeeper实现分布式锁的原理主要基于ZooKeeper提供的一些特性,包括有序性、唯一性、临时节点等。下面是基于ZooKeeper实现分布式锁的。

2024-04-02 13:19:20 762

原创 打卡记录怎么存比较好

使用位图(Bitmap)来存储Redis的打卡记录是一种常见的方法,特别适用于每日的签到、打卡等场景。而使用Redis的位图存储打卡记录时,每个用户只需要一个位图来表示打卡情况,每个位图占用的存储空间与打卡天数相关。可以看到,使用Redis的位图来存储打卡记录相比于使用MySQL表存储,可以节省大量的存储空间。通过使用位图来存储打卡记录,可以节省大量的存储空间,并且提供了高效的查询和统计功能。假设有一个用户打卡系统,需要记录用户每天是否打卡,可以使用Redis的位图来存储。

2024-04-02 07:18:39 637

原创 Docker 设置redis 集群

通过以上步骤,你可以使用Docker创建一个简单的Redis集群。请注意,这只是一个基本的示例,实际情况中可能需要根据具体需求进行更详细的配置和管理。是Redis节点的IP地址。

2024-04-02 07:06:34 723

原创 再谈敏捷开发

需要注意的是,Scrum和Kanban都是敏捷开发方法,它们的目标都是提高团队的生产效率和交付价值,但在实际应用中,选择哪种方法取决于项目的具体情况和团队的需求。这些实践工具可以帮助团队更好地实施敏捷开发和敏捷开发2.0的方法论,并促进团队成员之间的协作和沟通,提高团队的生产效率和交付价值。

2024-03-27 14:57:41 533

原创 为啥HTTPS比HTTP更安全

你肯定被问到过,为啥HTTPS比HTTP更安全?

2024-03-26 16:13:35 291

原创 达梦数据库对比mysql

总体而言,达梦数据库和MySQL都是常见的关系型数据库管理系统,它们在很多方面都有相似之处,但也存在一些差异,如支持的数据类型、存储引擎、许可方式等。选择哪种数据库取决于具体的需求和项目情况。

2024-03-25 12:41:04 2020

原创 Web3不等于比特币

CryptoKitties是一个基于以太坊区块链的去中心化游戏,允许用户购买、繁殖和交易数字化的可收集的“猫咪”。该游戏通过智能合约实现猫咪的独一无二的属性,并允许用户在二级市场上交易猫咪。: DID(去中心化身份)是一个基于区块链技术的数字身份认证标准,允许用户在不同的应用之间安全地共享身份信息。: Uniswap是一个去中心化的交易平台,允许用户在不同的加密货币之间进行兑换。这些产品只是Web3技术应用的一小部分范例,随着技术的发展和创新,将会有更多有趣的产品涌现出来。

2024-03-25 12:17:03 292

原创 Java实现Cache Aside Pattern 例子

方法首先尝试从缓存获取数据,如果缓存中没有,则从数据库中获取,并将结果存入缓存。方法先从数据库删除数据,然后从缓存中删除。类模拟了一个数据源(比如数据库),方法先更新数据库,然后更新缓存。

2024-03-21 22:00:49 330

原创 Service Mesh 概述

这些是对 Service Mesh 的定义、功能、起源和未来发展的简要概述。

2024-03-21 18:06:42 343

空空如也

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

TA关注的人

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