25K+ Star!一个开源的通用 SQL 客户端工具!
大家好,我是 Java陈序员。
对于每一位后端开发者、数据分析师、DBA 而言,日常工作中绕不开的就是与各类数据库打交道,拥有一款功能强大的数据库管理工具,可以大大地提高工作效率。
今天,给大家推荐一款开源的 SQL 客户端工具,帮助你更好的管理数据库!
关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享 ...
InheritableThreadLocal,从入门到放弃
InheritableThreadLocal相比ThreadLocal多一个能力:在创建子线程Thread时,子线程Thread会自动继承父线程的InheritableThreadLocal信息到子线程中,进而实现在在子线程获取父线程的InheritableThreadLocal值的目的。
关于ThreadLocal详细内容,可以看这篇文章:史上最全ThreadLocal 详解
和 ThreadLocal 的区别
举个简单的 ...
金蝶云苍穹,新手初学者小白PC端java插件开发教学示例
注:
1.本文章的面向对象为刚刚接触金蝶云苍穹星空旗舰版,具有PC端Java插件开发需求的新手、小白、与初学者
2.本文章中涉及的开发环境包括:金蝶云苍穹星空旗舰版开发平台、安装了金蝶官方插件的IDEA
3.插件的实际开发涉及表单页面的生命周期,建议对此内容有一定熟悉,页面的生命周期参考文章:
https://vip.kingdee.com/ ...
PriorityQueue的秘密:堆结构的高效应用与实现原理
介绍
优先级队列的作用是能保证每次取出的元素都是队列中权值最小(或最大)的。这里元素大小的评判可以通过元素本身的自然顺序(natural ordering),也可以通过构造时传入的比较器(Comparator)。
Java中PriorityQueue实现了Queue接口,不允许放入null元素;其通过堆实现,具体说是通过完全二叉树(complete binary tree)实现的 ...
Keycloak~infinispan中MergedUpdate中lifespanMs和maxIdleTimeMs
在 Keycloak 中,MergedUpdate 类里的 lifespanMs 和 maxIdleTimeMs 是与 Infinispan 分布式缓存会话管理密切相关的两个核心参数。它们共同决定了用户会话在缓存中的存活时间。
下面的表格能帮你快速把握它们的核心区别:
参数
含义
对应 Keycloak 配置举例
过期触发条件
lifespanMs
会话的绝对最大存活时间
SSO Ses ...
vivo 微服务架构实践之 Dubbo 性能优化
作者:互联网中间件团队-Zhang Zhenwei本文为2025年 vivo 开发者大会互联网技术专场分享内容之一,在微信公众号《vivo互联网技术》对话框回复【2025VDC】获取 2025VDC 互联网技术会场议题相关资料。在Java技术栈场景,vivo主要基于 Apache Dubbo 框架来作为微服务之间的通信桥梁,在内部业务的大规模实践过程中,我们碰到了 ...
剑指offer-62、⼆叉搜索树的第k个结点
题⽬描述
给定⼀棵⼆叉搜索树,请找出其中的第 k ⼩的 TreeNode 结点。
示例1
输⼊:{5,3,7,2,4,6,8},3
返回值:{4}
思路及解答
二叉搜索树的关键性质
二叉搜索树具有一个重要特性:中序遍历(左-根-右)BST会得到一个升序排列的节点值序列。因此,寻找第k小的节点本质上就是获取中序遍历序列中的第k个元素。理解这一点是掌 ...
10340_基于Springboot的游戏网站
1、项目包含
项目源码、项目文档、数据库脚本、软件工具等资料;
带你从零开始部署运行本套系统。绿-泡-泡:QianXun-Software
2、项目介绍
随着互联网在各行业的发展,互联网与行业相辅相成,尤其是网络与购物的相结合,实现了线上购物的销售渠道,目前,游戏行业的盛行,游戏商城可以看到多样化的游戏产品,但是单门的游戏 ...
剑指offer-64、滑动窗⼝的最⼤值
题⽬描述
给定⼀个数组和滑动窗⼝的⼤⼩,找出所有滑动窗⼝⾥数值的最⼤值。例如,如果输⼊数组 {2,3,4,2,6,2,5,1} 及滑动窗⼝的⼤⼩ 3 ,那么⼀共存在 6 个滑动窗⼝,他们的最⼤值分别为 {4,4,6,6,6,5} ;
针对数组 {2,3,4,2,6,2,5,1} 的滑动窗⼝有以下6个: {[2,3,4],2,6,2,5,1} , {2,[3,4,2],6,2,5,1} , {2,3,[4,2,6], ...
Spring 的西西弗斯之石:理解 BeanFactory、FactoryBean 与 ObjectFactory
今天,代码又报错了。或者也许是昨天,我不清楚。
不管怎样,Spring 容器抛出了一个 BeanCreationException。为了解决它,我被迫潜入框架的深处,去注视那些平时被 @Autowired 掩盖的齿轮。
在 Spring 的世界里,存在着一种必然的复杂性。这种复杂性并非设计者的恶趣味,而是为了在一个静态的语言中构建动态世界所付出的代 ...
10341_基于Springboot的珠宝销售网站
1、项目包含
项目源码、项目文档、数据库脚本、软件工具等资料;
带你从零开始部署运行本套系统。绿-泡-泡:QianXun-Software
2、项目介绍
随着科学技术和信息通讯的飞速发展,Internet极大的丰富和改变着我们生活的各个行业。随着Internet的普及应用,人们可以跨越时间和空间的限制,足不出户便能通过网络完成信息交流,而 ...
深度解析Java视角下Cookie、Session、Token实战教程
目录一、前置知识:HTTP协议的无状态性二、Cookie:客户端的状态载体2.1 什么是Cookie?2.2 Cookie的核心原理与Java实现2.2.1 核心原理2.2.2 Java实战:Cookie的创建与使用2.3 Cookie的核心属性详解2.4 Cookie的优缺点优点缺点三、Session:服务器端的状态管理3.1 什么是Session?3.2 Session的核心原理与Java实现3.2.1 核 ...
解决JdbcTemplate查询时报错Incorrect column count: expected 1, actual 17问题
目录一、报错内容报错背景项目代码报错信息报错原因二、解决方法三、总结一、报错内容
报错背景
使用JdbcTemplate执行查询时,报错了,代码及报错内容如下:
项目代码
String sql = "select * from user";
List<User> userList = jdbcTemplate.queryForList(sql,User.class);
报错信息
org.springframework.jdbc.Incorrect ...
深度解析Spring Bean生命周期以及LomBok插件
目录一、传统Java vs Spring:Bean生命周期核心差异二、Spring Bean生命周期完整阶段拆解三、Bean生命周期回调方法:3种实现方式与优先级方式一:接口实现(InitializingBean + DisposableBean)1. 代码实现2. 注意事项方式二:XML配置(init-method + destroy-method)1. 代码实现2. 核心优势方式三:注解实现(@PostConst ...
SpringBoot WebSocket多消息推送过程
目录实现功能添加依赖websocket配置类websocket拦截器websocket处理器websocket工具类封装websocket控制器测试地址总结实现功能
1. 给某个分组推送消息2. 给所有分组推送消息3. 给所有用户推送消息4. 给某一个用户单独推送消息(在分组中)5. 给某一个用户推送消息(不在在分组中)6. 用户可能存在多个分组7. 用户多设备登 ...
Java字符串格式化工具String.format()完整用法指南
目录前言一、基础认知核心作用核心语法二、格式说明符的完整结构三、全量常用转换符四、综合实战示例(覆盖所有核心场景)五、注意事项六、核心总结前言
String.format()是 Java 中最核心的字符串格式化工具,能根据指定模板和参数生成标准化字符串,替代硬编码拼接,提升代码可读性和跨平台兼容性。以下是其完整、系统的用 ...
Spring获取Cookie和Session(@CookieValue()和@SessionAttribute())
目录获取 Cookie传统获取 Cookie简洁获取 Cookie(注解)获取 SessionSession 存储和获取简洁获取 Session (1)简洁获取 Session (2)获取 Cookie
传统获取 Cookie
这是没有 Spring 的时候,用 Servlet 来获取(获取所有的 Cookie)
Spring MVC 是基于 Servlet API 构建的原始 Web 框架,也是在 Servlet 的基础上实现的
@Requ ...
Spring Boot 4.0 新特性实战全解析
目录Spring Boot 4.0 新特性全解析 + 实操指南一、前置准备:升级 Spring Boot 4.0 必看前提二、核心新特性:逐个拆解 + 实操落地特性 1:GraalVM 原生镜像支持「断崖式」增强特性 2:自动配置更灵活,排错更高效特性 3:Web 层大升级:HTTP/3 原生支持 + MVC 兼容响应式特性 4:Testcontainers 集成简化,容器化测试更丝滑 ...
RestTemplate发送Post请求报错:414 URI Too Long问题及解决
目录一、报错背景二、问题分析:414 URI Too Long2.1、常见原因三、解决方法3.1、使用 LinkedMultiValueMap 处理表单数据(推荐)3.2、将参数拼接到URI上四、避免误区五、总结一、报错背景
使用RestTemplate发送http Post请求时,返回了一个报错 414 URI Too Long。
因为服务端是Post请求并用@RequestParam进行接收,所以我将 ...
Spring Boot 容器化Docker+K8s 部署最佳实践
目录一、前置知识与环境准备二、Spring Boot 示例项目搭建2.1 项目初始化(使用 Spring Initializr)2.2 编写测试接口2.3 本地测试项目三、Docker 构建 Spring Boot 镜像(核心步骤)3.1 基础构建法(适合入门)3.1.1 编写 Dockerfile3.1.2 配置 Maven 固定 Jar 包名称3.1.3 构建 Docker 镜像3.1.4 本地运行 Docker 容器验 ...