刷新
Java 实现 Excel(XLS/ XLSX)和 HTML 格式之间的转换

博主头像 Excel 是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,以便更好地利用和展示数据。本文将介绍如何通过 Java 实现 Excel 与 HTML 格式之间的相互转换。 将Excel文档转换 ...

并发扣减库存系统设计

博主头像 我们在做电商的时候,经常遇到下单之后需要扣减库存的业务,那这个业务我们怎么来实现呢? 传统的做法是: 用户下单,执行下单服务; 同时,扣减库存; 如果是并发较高的场景,为了保证可用和性能,那么采用二阶段事务的方式,或者消息队列的方式,都可以实现。 但是,多个线程同时执行下单服务,库存服务,这样,会出 ...

DeepSeek 装进 VSCode,编程非常丝滑!

博主头像 大家好,我是R哥。 之前分享了几篇 DeepSeek 的开发实践: IntelliJ IDEA 接入 DeepSeek,辅助编程太强了! 王炸!Spring 宣布接入 DeepSeek!! 最近我又发现了一款让人 “写代码像开挂一样” 的神器 —— Roo Code + DeepSeek,并成功把它 ...

JEXL 入门实战

博主头像 JEXL 是一个在 Java 中实现动态表达式和脚本功能的库,本文主要介绍其基本概率和使用。 1、背景 在软件开发中,动态执行表达式是一项非常重要的能力。特别是在动态规则处理、配置文件解析以及灵活的业务逻辑实现等场景下,使用一种能够在运行时解析和执行表达式的工具显得尤为重要。JEXL(Java Ex ...

Python语言发展史:从创立到成为全球热门

一、简介 Python 是一种高级、解释型、通用编程语言,由 Guido van Rossum 于 1991 年首次发布。它以简洁易读的语法和强大的生态系统著称,适用于 Web 开发、数据分析、人工智能、自动化脚本等多个领域。 ‍ ‍ ​ Python 凭借其简洁性、灵活性与生态广度,已成为计算机领 ...

OceanBase数据库实战:Windows Docker部署与DBeaver无缝对接

一、前言 OceanBase 是一款高性能、高可扩展的分布式数据库,适用于大规模数据处理和企业级应用。 随着大数据和云计算的普及,OceanBase 在企业数字化转型中扮演着重要角色。学习 OceanBase 可以帮助开发者掌握先进的分布式数据库技术,提升数据管理能力。使用 Docker 安装 Oc ...

常用的Dos命令

博主头像 常用的DOS命令 盘符切换 盘符+: 查看当前盘符下的所有文件 dir 切换目录 跨盘符切换 cd+空格+盘符名称+:(仅能输出盘符,无法进入) cd+空格+/d+空格+盘符名称+: cd+空格+/d+空格+盘符名称+:+ \ +目录名称(跨盘符切换时,需输入目标路径,即目录名称) 同盘符切换 cd ...

Java中编译期异常和运行期异常的区别

博主头像 在Java中,异常分为运行期异常(Runtime Exception)和编译期异常(Checked Exception),两者的核心区别在于 编译器是否强制要求处理。以下是它们的详细对比: 1. 定义与分类 类别 运行期异常(Runtime Exception) 编译期异常(Checked Exce ...

中国最难入职的 IT 公司排行榜

博主头像 大家好,我是R哥。 最近在网上看到了一个关于《中国最难入职 IT 公司排行榜》的图片: 这个表格不是我整理的,图表和数据来源网络,仅供参考哈。 首先,作为一名程序员,看到这份榜单无疑戳中了我的职业好奇心。 这种排名,一方面会让人感觉进这些公司很有自豪感,另一方面也会让人反思:这些公司究竟有多难进?特 ...

keycloak~关于社区认证的深度总结

博主头像 keycloak关于社区认证它有统一的设计,社区认证包括了github,microsoft,wechat,qq,dingtalk等等,当然你还可以扩展很多实现了oauth2协议的第三方社区,将它们对接到keycloak上面来,这变得十分容易;社区认证一般由3个provider(SPI)组成,如下所示 ...

百万架构师第四十一课:RabbitMq:可靠性投递和实践经验|JavaGuide

博主头像 原文链接 RabbitMQ 2-可靠性投递与生产实践 可靠性投递 ​ 首先需要明确,效率与可靠性是无法兼得的,如果要保证每一个环节都成功,势必会对消息的收发效率造成影响。 如果是一些业务实时一致性要求不是特别高的场合,可以牺牲一些可靠性来换取效率。 ① 代表消息从生产者发送到Exchange; ② ...

JUC并发—7.AQS源码分析三

博主头像 大纲 1.等待多线程完成的CountDownLatch介绍 2.CountDownLatch.await()方法源码 3.CountDownLatch.coutDown()方法源码 4.CountDownLatch总结 5.控制并发线程数的Semaphore介绍 6.Semaphore的令牌获取过程 ...

MyBatis常见Bug之 —— 数据库表或列不存在

博主头像 数据库表或列不存在 1. 表不存在 在使用 MyBatis-Plus 时,虽然 MyBatis-Plus 内置了很多对单表操作的 CRUD,但是在使用时,可能会出现 “表不存在” 的情况,如: 这是因为在 MyBatis-Plus 运行时,会默认操作与被注入的泛型相同名字的表,即 @Mapper p ...

IM 即时通讯系统-05-聊一聊 IM 要如何保证安全性?

博主头像 IM 系列 聊一聊 IM 是什么? IM 即时通讯系统概览 聊一聊 IM 要如何设计? 聊一聊 IM 要如何设计功能模块? 聊一聊 IM 要如何进行架构设计? 聊一聊 IM 要如何进行技术选型? 聊一聊 IM 要如何保证安全性? 聊一聊 IM 要如何保证扩展性? 聊一聊 IM 要如何实现运维与监控? ...

Maven 30问

博主头像 Maven 基础知识 什么是 Maven?它的主要作用是什么? Maven 是一个项目管理和构建工具,主要用于 Java 项目的构建、依赖管理和项目信息管理。 它通过 POM(Project Object Model)文件来描述项目的结构和依赖关系。 Maven 的核心概念有哪些?(如 POM、坐标 ...

<1···454647···49>