![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 68
WX7251
这个作者很懒,什么都没留下…
展开
-
mapstruct-通用类转换方案
前言 在我们Java开发的过程中不可避免的会遇到需要将一个类转换为另一个类的情况,比如我们从数据中或者别人的接口中查询出来的类转换为我们对外展示所用的视图类。可能有人会说,那直接用返回的类当做视图类不就可以了,还省了转换的步骤和时间。但是如果当返回内容增加或修改时就很容易污染我们的对外视图类,所以类转换也变得不可或缺。下面将展示四种种类转换方式。类型转换方式一:JSONCategoryVo categoryVo = JSONObject.parseObject(JSONObje...原创 2021-12-14 18:44:16 · 3992 阅读 · 0 评论 -
JaCoCo-测试可度量化
最近为了响应公司要求,大家都在积极(无奈)的补单元测试,要求单元测试行覆盖率达到*%,在之前的概念中,并没有了解过如何统计我们单元测试的行覆盖率,这次接触到JaCoCo也让我非常惊喜,它可以帮我们非常直观的看到单元测试的代码层面的覆盖情况,不过这个仅针对Java代码,大家酌情选择,下面和大家一起分享下吧。一、JaCoCo的使用1.引入插件在pom.xml中引入我们的JaCoCo插件,如下: <plugin> &...原创 2021-12-09 10:31:57 · 1146 阅读 · 0 评论 -
Java中如何优雅的把Map转为对象
对于一个Map我们如何把它转成对应的对象呢,除了Json我们还可以利用反射,更快捷public class Person { private String userName; private int age; public String getUserName() { return userName; } public int getAge() { return age; } publi原创 2021-12-09 09:43:41 · 41054 阅读 · 3 评论 -
JVM内存区域的划分
1.概述 JVM内存区域简单的可以划分为java堆和java栈,详细的可以划分为方法区,堆,程序计数器,虚拟机栈和本地方法栈。 其中方法区和堆是所有线程共享的,本地方法栈,虚拟机栈和程序计数器是线程独占的。2.详细介绍 2.1程序计数器 程序计数器相当于当前线程所要执行字节码的行号指示器,字节码解释器通过改变行号指示器的值来获取下一条要执行的字节码指令,当执行本...原创 2018-05-18 13:53:14 · 763 阅读 · 0 评论 -
ConcurrentHashMap
1. HashMapConcurrentHashMap是线程安全的map,通过索引+synchroninzed的分段式锁实现线程安全。在java中hash的实现主要是数组+链表的方式,后来在JDK1.8之后如果数组元素多的情况下会采用数组+红黑树的方式,确定在数组中Index的方式是hash值与数组长度取余,在Java中为了速度更快采用hash&nodes.length。给定的默认容量为 16,负载因子为 0.75。Map 在使用过程中不断的往里面存放数据,当数量达到了 16 * .原创 2021-04-06 15:59:16 · 132 阅读 · 0 评论 -
深入理解Java虚拟机-Java内存区域与内存溢出异常
先一点点记录一下,后期会补一下全部的<<深入理解Java虚拟机>>目录Java内存区域与内存溢出异常 对于从事C,C++程序的开发人员来说,在内存管理区域,他们既是拥有最高权力的“皇帝”又是从事最基础工作的“劳动人民”,即拥有一个对象的所有权,又要负责每一个对象开始到结束的维护任务。 对于Java程序员来说,在虚拟机自动内存管理机制的帮助下,不需要再为每一个new操作去写配对的delete/free代码, 不容易出现内存溢出问题,由虚拟机管理内存让这...原创 2021-01-21 16:17:30 · 115 阅读 · 0 评论 -
BitSet原理简介
1.定义 Bitset是Java中的一种数据结构。Bitset中主要存储的是二进制位,做的也都是位运算,每一位只用来存储0,1值,主要用于对数据的标记。可用于判断数据是否重复。2.实例 public static void main(String[] args) { String str="test"; String str2="test"; ...原创 2019-12-17 16:11:52 · 364 阅读 · 0 评论 -
Java-获取本机的外网和内网ip
/*** 获取本机内网和外网ip** @author wangxia**/public class NetWork { private static final String QUERY_ADDRESS = "http://www.icanhazip.com"; /** * 获取外网ip */ public static String getOuterNetIp() { Stri...原创 2018-05-18 14:33:20 · 2558 阅读 · 2 评论 -
Quartz入门
简介 Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java组件或 EJBs。Quartz的最新版本为Quartz 2.3.0。使用 1.引入maven依赖 ...原创 2019-06-17 11:39:41 · 195 阅读 · 0 评论