Java中级
换了马甲的小强
爆发自己的小宇宙吧!
展开
-
Lombok——Eclipse安装插件 & 使用说明
一、Lombok说明一个简化编写POJO的插件,这样就可以不用写getter和setter方法了,以下为官网对Lombok说明。Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.Never write another...原创 2019-03-29 17:33:58 · 382 阅读 · 0 评论 -
Java软引用&弱引用使用示例代码
一、示例代码public class ReferencesObjs { static class M2Object { byte[] m2 = new byte[2 * 1024 * 1024]; } public static void main(String[] args) throws Exception { M2Object o = new M2Object(); ...原创 2019-04-04 18:15:13 · 447 阅读 · 0 评论 -
解决Jdk8调试的时候无法查看局部变量——重新编译rt.jar
一、问题现象二、编译rt.jar操作步骤在Eclipse中创建一个Java项目:jdk8(注意:要使用jdk而不是jre)将src.jar中的内容解压到jdk8/src目录下将编译报错的类和包删除;右键export,选择导出为jar,命名为rt_debug.jar;将rt_debug.jar拷贝到jre/lib/endorsed/目录下(注意:如果没有endorsed这个目录就创建...原创 2019-03-27 11:29:02 · 973 阅读 · 5 评论 -
Integer中IntegerCache使用及分析
一、IntegerCache介绍IntegerCache为Integer类的缓存类,默认缓存了-128~127的Integer值,如遇到[-128,127]范围的值需要转换为Integer时会直接从IntegerCache中获取,具体如以下源码: public static Integer valueOf(int i) { if (i >= IntegerCache...原创 2019-03-27 22:39:55 · 6385 阅读 · 4 评论 -
使用ProcessExplorer分析占用CPU过高的Java线程
一、使用ProcessExplorer查看进程的线程信息,如截图有上图我们可知道线程4396和1956两个线程CPU占用率比较高(系统没有一个用户使用的情况下);二、使用计算器-程序员模式,将线程4396和1956转换为16进制,为112C和7A4三、使用Java自带的jstack命令导出线程dump命令:jstack 3092 > jstack.txtjstack命令更多介...原创 2019-05-08 21:35:07 · 1353 阅读 · 0 评论 -
Apache-common StrSubstitutor进行占位符替换
一、代码示例public static void main(String[] args) { Map<String, Object> valueMap = Maps.newHashMap(); valueMap.put("firstName", "你好"); valueMap.put("secondName", "他好"); valueMap.put("menuId"...原创 2019-08-28 09:27:37 · 1064 阅读 · 0 评论