![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
Java学习
he3more
这个作者很懒,什么都没留下…
展开
-
记一次No appropriate protocol (protocol is disabled or cipher suites are inappropriate)调用异常及解决办法
背景前几天在对项目做数据源切换时,发现切换完数据源后项目无法启动,一直报如下异常:乍一看以为是数据库连接配置问题,便针对Communications link failure这个问题一顿百度谷歌,未果,后来在大佬的排查点拨下,发现其根本原因并不是由于数据库配置,最后报的No appropriate protocol (protocol is disabled or cipher suites are inappropriate)这个才是关键,而导致这个问题的,竟是jdk版本过高导致,...原创 2021-12-25 15:48:17 · 35953 阅读 · 15 评论 -
使用druid解析sql,如表名,字段等
测试代码 /** * druid sql解析 */ public void getTableNamesFromSql(){ String sql = "select gender,email,phone,address from table1 where id = 3 and name = 'dave'"; //String sql = "selec gender,email,phone,address from table1";原创 2021-07-26 12:24:11 · 4540 阅读 · 1 评论 -
JVM学习(二)-- JVM内存布局
JVM内存布局JVM内存布局规定了Java在运行过程中内存申请、分配和管理的策略,保证了JVM的高效稳定运行,其经典内存布局如下图所示程序计数器线程私有用于存放执行指令的偏移量和行号指示器等,线程执行或恢复都需依赖程序计数器用以完成分支、循环、跳转、异常处理、线程恢复等基础功能。不会发生OOM错误本地方法栈线程私有登记native方法,在Execution Engine 执行时加载本地方法库。本地方法可通过JNI(Java Native Interface)来访问虚拟机运行时的数据原创 2020-10-08 01:35:20 · 142 阅读 · 0 评论 -
JVM学习(一)-- 类加载过程与双亲委派模型
类加载 所谓的类加载,就是指将.class字节码文件实例化成Class对象并进行相关初始化的过程。通过ClassLoader类加载器将.class类文件加载到内存中,类加载机制遵循双亲委派模型。类从被加载到JVM中开始,到卸载为止,整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。类加载过程主要包括加载,链接,初始化三个步骤类加载过程类加载过程主要分三步:加载(load):该阶段读取类文件产生二进制流,并转换为特定的数据结构,初步校验cafe babe魔法值,常量值,文件原创 2020-10-07 22:30:16 · 139 阅读 · 0 评论 -
Java 并发与多线程学习笔记(一)知识图谱
以下主要为学习并发与多线程时做的笔记,大致整理成的知识图谱原创 2020-10-03 21:48:16 · 146 阅读 · 0 评论