首页

当前分类 java       文章数 270       所有分类
linux安装切换多个版本jdk
JDK 和 openJDK 区别
CompletionStage 说明
CompletableFuture 例子
java8 JavaScript引擎 Nashorn
JAVA Void类
获取有序数组中第一个大于等于目标值的索引
Java identityHashCode
Java Files 常用方法
java面试题2022
java BIO NIO AIO 区别
Java注解实例
Java简史
特定类型文件复制功能 java实现
反编译工具 JD-GUI 启动报错
jdbc获取自增主键ID
java 数据库访问 持久层 框架
JDK18 特性
project loom 那些事
java 虚拟线程使用
networking io with virtual threads
java Virtual Threads 虚拟线程
不使用for和while 实现循环效果
java hex util
jar 命令使用
Java 异步编程
CompletableFuture 实例
httpclient 超时设置
mac mvn 编译 找不到JDK
JNDI demo
JFR实战
jackson与SimpleDateFormat
时间格式化性能对比
JDK默认GC
micrometer guage 例子
云服务器jdk8安装
SimpleDateFormat并发问题实例演示
字符串格式化性能对比
string format几种方式
Java8 Stream过滤null值
FutureTask简介
线程池实例之提交返回类型不同的任务
Collectors groupingBy 用法及性能
Java函数式与非函数式写法性能对比
Java assert
Java switch tableswitch lookupswitch
java二维数组
Java实现简单的模板
java性能分析 JFR 和 JMC
HTTP调用卡住的案例
Java为什么不能在构造函数中启动线程?如何终止一个线程?
Java锁升级过程
java HTTP Server NanoHttpd
数据对象转换Object mapping
http request to javabean
key忽略大小写的TreeMap
Lombok的一些坑
java 猜数字
java类静态初始化问题
classpath资源读取问题
BigDecimal 使用注意点
java正则表达式实例之简单分词
基于 HttpURLConnection 的 http 客户端
Java 位运算实例
为何不建议使用Optional
Runnable Callable Future FutureTask
JDK CGLIB Javassist ASM 动态代理 比较
Java字节码增强简介
Java类加载过程
Java动态代理InvocationHandler例子
BlockingQueue add offer put 区别
java死锁实例
Synchronized 和 AQS 实现要点
基于 ReentrantLock Condition await signalAll 实现简单的阻塞队列
基于 wait 和 notifyAll 实现简单的阻塞队列
ReentrantLock原理
LockSupport简介
java线程状态及转换
Stack ArrayDeque LinkedList
java随机数生成器
hashmap调优
Iterator 与 ListIterator
Java模块化
mac切换jdk版本
Java 正则表达式
ConcurrentHashMap使用注意点
Java异常知识点
java中的list
ThreadLocal原理及最佳实践
LongAdder和LongAccumulator
java面试题
Object的hashCode和equals方法
java并发包JUC简介
jdk里的泛型
递归与尾递归java实例
增量方差java实现
java泛型
java内部类
java访问修饰符
Java黑科技VirtualMachine
hashCode和identifyHashCode区别
ThreadLocal 与 SimpleDateFormat
synchronized知识点
java有意思的陷阱
java中创建对象的五种方式
单例模式几种实现方式
java面试题合集
两个线程,一个输出字母,一个输出数字,交替输出1A2B3C4D5E6F
堆外内存使用实例
lambda的优雅用法
函数式与非函数式,你来pick
Java 枚举使用
字节码增强cglib实例
Java8日期api使用
java类加载知识点
lambda使用说明
代理的几种实现方式
java里的协程
ConcurrentHashMap读操作为什么不需要加锁
CountDownLatch 与 CyclicBarrier
链式调用优缺点
Timer already cancelled 异常分析
map computeIfAbsent 方法使用
LongAdder vs AtomicLong
Java实用工具类
java对象内存占用大小计算
使用int作为key的IntHashMap
threadlocal实例及原理
java逃逸分析和TLAB及对象分配过程
UnsupportedClassVersionError处理
URLClassLoader简介
类加载器中findClass与loadClass的区别
java restful 框架
java内存溢出
java类卸载机制
java获取系统信息
slf4j为什么用{}而不是%s
jvm热点线程定位
java编码规范
集合遍历删除注意点
jcmd PerfCounter 说明
不要在finally块中使用return
Timer和ScheduledExecutorService的区别
JVM性能分析利器 JMC 和 JFR
java number 比较陷阱
java资源加载方式比较
Java锁机制
规则引擎easyrules
metaspace OOM 实例
Java线程池ExecutorService与CompletionService
Java异常堆栈信息
Java 泛型 集合 数组
java泛型技巧
eclipse关闭验证
jvm外挂工具揭秘
javap查看字节码
Java中的整数缓存IntegerCache
java线程池系列文章汇总
java线程池实例
ThreadPoolExecutor中的ctl变量
线程池要点
为何Hashtable ConcurrentHashmap不允许key 和 value为null
try-with-resources 实例
JDBC最佳实践
注解优缺点
性能压测谨慎使用监控工具
System.getenv 与 System.getProperty 的区别
java日志打印建议
The java.util.concurrent Synchronizer Framework 翻译
Maven Dependencies 与 Referenced Libraries的区别
反射获取字段注意点
eclipse设置条件断点和异常断点
eclipse异常断点设置
Properties使用UTF8读取中文配置文件
jvm在线诊断工具greys
java内存模型
注解组合和继承
java初始化顺序
ServiceLoader机制及实例
各种日志重定向到slf4j
System.out重定向到slf4j
slf4j简介
常用时间单位换算
jdk日志无缝迁移到slf4j
java日志系统转换
slf4j集成log4j
java日志框架冲突介绍
jar包冲突的处理套路
使用jar命令生成jar包
maven依赖排除
eclipse中分析pom文件
springboot应用jar包冲突解决实例
自定义注解实例
公平锁与非公平锁的关键区别
AQS同步队列与条件队列
btrace使用简介
java对象访问方式
jar冲突处理
判断文件是否是符号链接
JVM中的对象内存布局
ConcurrentHashMap size 实现要点
ConcurrentHashMap读不需要加锁的秘密
HashMap和ConcurrentHashMap中的hash函数
java位运算
hashmap在java7和8中的区别
java8 hashmap 要点
常用hash算法及冲突解决方法
java7 hashmap 要点
并发机制的底层实现原理摘要
并发编程的挑战摘要
ConcurrentHashMap在jdk7和8中的区别
java堆外内存回收机制
java调用c方法JNA实例
GC性能度量指标
自旋锁要点及简单实例
一行代码摧毁jvm
DirectByteBuffer申请与释放
unsafe要点
AtomicInteger源码分析要点
NIO JMX BufferPool内存监控
java中的非阻塞IO和异步IO
String.intern要点整理
system.gc要点整理
java获取当前jvm进程id
XML解析之Digester
java类加载器要点整理
自定义类加载器例子
AQS要点整理
软引用弱引用及引用队列实战例子
四种引用及WeakHashMap介绍
g1 GC 要点
jvm设置滚动记录GC日志
循环引用导致fastjson序列化与反序列化StackOverflowError
java异常处理12条建议
java GC之 CMS 和 G1
Java GC种类及配置说明
FileInputStream无法读取完整数据问题解决
getResource和getSystemResource的区别
Class.forName()和ClassLoader.loadClass()的区别
轻量级web容器undertow
java应用oom被kill排查记录
java web项目中获取重要的请求信息
jdk jcmd 使用
java日志框架简介
java中的队列介绍
Java运行时数据区
Java线程状态中BLOCKED和WAITING的区别
ArrayBlockingQueue和LinkedBlockingQueue的区别
G1的两种GC模式
G1垃圾收集器jvm参数
堆内存结构及GC触发条件
如何在10亿个长整数中找出前1000最大的数
各种垃圾收集器的特点及使用场景
JVM CMS 介绍
JVM CMS 常用参数
延迟队列原理及使用场景
如何判断一个数是否在40亿个整数中
java线程中断机制
ScheduledThreadPoolExecutor使用介绍
JAVA虚拟机关闭钩子Shutdown Hook使用
java线程池shutdown和shutdownNow的区别
java thread join实现原理
ExecutorService中submit和execute的区别
NoClassDefFoundError和ClassNotFoundException异常的区别
java线程状态
java并发机制的底层实现原理
Lock和synchronized的区别
线上问题排查常用命令
找出最耗CPU的java线程和代码
jdk自带工具使用