java
文章平均质量分 53
纸素画笺
遇事不决,可问春风 hollow
展开
-
JVM基础
同时,启用堆转储可以在发生内存溢出错误时提供详细的堆内存信息,帮助定位问题的根本原因。确保为应用程序分配足够的堆内存,以免发生内存溢出错误,同时避免过分分配导致浪费。如果堆内存溢出,将会生成一个包含Java堆内存快照的文件,以帮助分析内存问题。这是一组Java虚拟机参数,通常用于配置Java应用程序的堆内存大小,并在发生内存溢出错误时生成堆转储文件(heap dump)。VM Args:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError 含义。原创 2024-02-21 19:41:02 · 359 阅读 · 0 评论 -
异常栈信息不见了之JVM参数OmitStackTraceInFastThrow
JVM对一些特定的异常类型做了Fast Throw优化,如果检测到在代码里某个位置连续多次抛出同一类型异常的话,C2会决定用Fast Throw方式来抛出异常,而异常Trace即详细的异常栈信息会被清空。这种异常抛出速度非常快,因为不需要在堆里分配内存,也不需要构造完整的异常栈信息。从这段日志可知,抛出了几千次带有详细异常栈信息的异常后,只会抛出java.lang.NullPointerException这种没有详细异常栈信息只有异常类型的异常信息。这就是Fast Throw优化后抛出的异常。原创 2023-02-03 10:54:41 · 429 阅读 · 0 评论 -
Lambda表达式常用公式笔记
工作中,我们经常遇到list转map的案例。Collectors.toMap就可以把一个list数组转成一个Map。.........类似的,还有Collectors.toList()、Collectors.toSet(),表示把对应的流转化为list或者Set。原创 2022-11-26 17:59:42 · 615 阅读 · 0 评论 -
多线程下使用volatile学习记录
使用 volatile 可以解决内存可见性问题和防止指令重排序,我们在单例模式中使用 volatile 主要是使用 volatile 的后一个特性(防止指令重排序),从而避免多线程执行的情况下,因为指令重排序而导致某些线程得到一个未被完全实例化的对象,从而导致程序执行出错的情况。转自:https://blog.csdn.net/sufu1065/article/details/125157592。原创 2022-11-06 21:47:14 · 302 阅读 · 0 评论 -
xxl-job使用指南
官网:https://www.xuxueli.com/xxl-job本文只讲解已部署好的xxl-job如何使用二、配置xxl-job2.1 目录结构可以留意到这段注解,通过配置类来实现不同环境下的xxl-job地址以及端口号的设置本地测试:端口号需要与内网穿透地址的端口号一致,下图红框处要写8900,下图中我写的不对(本地测试连接需要内网穿透)内网穿透工具地址:https://natapp.cn/ 设置对应的xxl-job地址(注册到对应地址上的xxl-job)具体使用地址看自己部署的地址要保证该命原创 2022-06-24 01:07:49 · 5000 阅读 · 1 评论 -
java位运算>>、<<、>>>
左移,同理,末尾补0左移,末尾补0所有负数先进原码转为补码,在通过补码进行算术左移或右移。(正数原补码相同所以不用转)[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-d5nhjL9Q-1655124153199)(位运算.assets/1655123470187.png)]...原创 2022-06-13 20:44:20 · 297 阅读 · 1 评论 -
Error:java: 程序包lombok不存在
Error:java: 程序包lombok不存在如果不是安装lombok路径问题可以尝试如下解决方案勾上点ok刷新maven即可原创 2022-06-13 17:49:03 · 620 阅读 · 0 评论 -
mybatis-plus如何加括号
如何通过mp语句实现这种SQL6.2 详细解释6.2.1想给循环语句外面套括号6.2.2 实现 B or C => (B or C)打印结果:打印结果:原创 2022-05-31 22:54:03 · 5940 阅读 · 2 评论 -
nginx笔记(Ubuntu安装)
Nginx笔记(Ubuntu版)一、安装说明1.1 安装官网地址:http://nginx.org/en/download.htmlUbuntu管理员模式下直接输入apt-get install nginx1.2 debug在乌邦图下出现nginx占用的解决方案主要使用命令:lsof -i:80 //查看80端口由哪些程序占用sudo kill -9 2621 //2621是上面查出来占用的端口,将其杀死乌邦图下修改nginx配置的方法本以为在/etc/nginx原创 2022-05-24 00:59:33 · 322 阅读 · 0 评论 -
xxl-job采坑指南xxl-rpc remoting error(connect timed out)
使用本地网络进行连接,导致的无法注册。报错信息address:http://192.168.x.xxx:9999/ code:500 msg:xxl-rpc remoting error(connect timed out), for url : http://192.168.x.xxx:9999/run解决方案1.将自动注册转为手动注册2.使用内网穿透工具3.将手动注册地址填写为内网穿透的地址......原创 2022-04-22 11:51:48 · 7158 阅读 · 0 评论 -
mysql中duplicate key update
二、duplicate key updateduplicate key update (重复密钥更新)插入字段时如何自我判断是更新还是插入2.1基础用法2.1.1 假设此时我们表中没有数据执行语句INSERT INTO test ( id, NAME )VALUES ( '1', '晓明' ) ON DUPLICATE KEY UPDATEid='123',name='xiaoming'结果2.1.2 有数据后再次执行执行语句同上sql结果这里就是原创 2022-04-22 11:28:02 · 6911 阅读 · 0 评论 -
Failed to execute goal org.apache.,maven.plugins:maven-compiler-plugin:3.8.1问题解决
问题展示Failed to execute goal org.apache.,maven.plugins:maven-compiler-plugin:3.8.1卡了10分钟~修改方法<java.version>1.8</java.version>注意看是否和自己的jdk版本一样,不一样需要修改项目结构自检~...原创 2022-03-02 21:28:05 · 3292 阅读 · 0 评论 -
工具类StringUtils.isEmpty()和StringUtil.isBlank()的区别
1.isEmptypublic static boolean isEmpty(String str)判断某字符串是否为空,为空的标准是str==null或str.length()==0下面是StringUtils判断是否为空的示例:StringUtils.isEmpty(null) = trueStringUtils.isEmpty("") = trueStringUtils.isEmpty(" ") = falseStringUtils.isEmpty("test") = falseStr原创 2022-02-17 15:48:34 · 495 阅读 · 0 评论 -
DEV,SIT,UAT,PET,SIM,PRD/PROD区别
按开发、测试、上线的时间线排序:DEV Development 研发环境SIT System Integrate Test 系统集成测试环境(内测)UAT User Acceptance Test 用户验收测试环境PET Performance Evaluation Test 性能评估测试环境(压测)SIM Simulation 高仿真环境PRD/PROD Production 正式/生产环境————————————————原文链接:https://blog.csdn.net/lianjok原创 2022-02-09 09:35:23 · 1040 阅读 · 0 评论 -
枚举类笔记
枚举一、基础入门1.常用范围一般用于定义一组相类似的常量2.古老方式定义枚举类public class TestOne { public static void main(String[] args) { System.out.println(People.LIU); System.out.println(People.LI); }}/** * 自定义枚举类 */class People { private final Strin原创 2022-01-17 20:49:30 · 182 阅读 · 0 评论