背景 众所周知,所有被打开的系统资源,比如流、文件或者Socket连接等,都需要被开发者手动关闭,否则随着程序的不断运行,资源泄露将会累积成重大的生产事故。 在Java的江湖中,存…
一、什么是JMS JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间…
在实战开发中经常有需要处理树形菜单、树形目录等等等业务需求。而对于这种产品,在设计数据库时也建议使用id<—–>parentId的结构来做。但是…
前言 限流是分布式系统设计中经常提到的概念,在某些要求不严格的场景下,使用Guava RateLimiter就可以满足。但是Guava RateLimiter只能应用于单进程,多进…
JPanel是面板组件,非顶层容器,一个界面只有可以有一个JFrame窗体组件,但可以有多个Jpanel面板,而JPanel上也可以使用FlowLayout,BorderLayou…
在项目中,需要获取指定年份和月份的最后一天。我在网上找到了一个用Calendar类获取的方法,代码如下: import java.text.SimpleDateFormat; im…
先看代码 public class TestDemo1 { public static void main(String[] args) { if (true) { byte[] …
一、什么是ORM? 对象关系映射(Object-Relational Mapping,简称ORM)是一种为了解决程序的面向对象模型与数据库的关系模型互不匹配问题的技术; 简单的说,…
在有些开发场景,需要对 List 对象列表进行过滤处理,并将有用的数据存放到Map中。 例如:告警对象,包含告警uuid(alarmUuid) 和 设备uuid(objUuid),…
本文实例讲述了Java二叉搜索树遍历操作。分享给大家供大家参考,具体如下: 前言:在上一节Java二叉搜索树基础中,我们对树及其相关知识做了了解,对二叉搜索树做了基本的实现,下面我…
一、JVM 内存模型 根据 JVM 规范,JVM 内存共分为虚拟机栈、堆、方法区、程序计数器、本地方法栈五个部分。 1、虚拟机栈:每个线程有一个私有的栈,随着线程的创建而创…
一、为什么要线程同步 因为当我们有多个线程要同时访问一个变量或对象时,如果这些线程中既有读又有写操作时,就会导致变量值或对象的状态出现混乱,从而导致程序异常。举个例子,如果一个银行…