PropertyNamingStrategy策略 FastJson默认使用CamelCase,在1.2.15版本之后,FastJson支持配置PropertyNamingStrategy,支持四种策略:CamelCase、PascalCase、SnakeCase和KebabCase。 属性名策略说明
踩坑:FastJson可正常反序列化字符串null,返回null,而不会抛出JsonException异常 try { User user = JSON.parseObject("null", User.class); if (user == null) {
在使用Fastjson解析json时发现,默认处理null时,无论是Map还是Object,结果会把null的字段以及值过滤掉,业务上需要保留null值 Map<String, Object> jsonMap = new HashMap<String, Object>();
finalize的工作原理应该是这样的:一旦垃圾收集器准备好释放对象占用的存储空间,它首先调用finalize(),而且只有在下一次垃圾收集过程中,才会真正回收对象的内存。所以如果使用finalize(),就可以在垃圾收集期间进行一些重要的清除或清扫工作。 finalize()在什么时候被调用?
如果我们要统计整个ConcurrentHashMap里元素的大小,就必须统计所有Segment里元素的大小后求和。Segment里的全局变量count是一个volatile变量,那么在多线程场景下,我们是不是直接把所有Segment的count相加就可以得到整个ConcurrentHashMap大小
Map可以使用多种实现方式,HashMap的实现采用的是hash表;而TreeMap采用的是红黑树。 Hashtable 和 HashMap 这两个类主要有以下几方面的不同: Hashtable和HashMap都实现了Map接口,但是Hashtable的实现是基于Dictionary抽象类。 在Ha
DESede是由DES对称加密算法改进后的一种对称加密算法。使用 168 位的密钥对资料进行三次加密的一种机制;它通常(但非始终)提供极其强大的安全性。如果三个56位的子元素都相同,则三重DES向后兼容DES。 添加依赖 使用这个依赖中的base64进行编解码 <!-- base64编码使用
//产生5位长度的随机字符串,中文环境下是乱码 RandomStringUtils.random(5); //使用指定的字符生成5位长度的随机字符串 RandomStringUtils.random(5, new char[]{'a','b','c
url参数转换成map /** * 将url参数转换成map * @param param aa=11&bb=22&cc=33 * @return */ public static Map<String, Object> getUrlParams(String p
格式化输出 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); LocalDateTime localDateTime = LocalDateTime.now(); /
byte[]和InputStream的相互转换 byte[]转换为InputStream public static final InputStream bytes2InStream(byte[] buf) { return new ByteArrayInputStream(buf); }
Locale类有如下几个构造器: Locale(String language) Locale(String language, String country) Locale(String language, String country, String variant) 通过构造方法实例化Lo
(1)匹配一个或多个空格的正则表达式:\\s+ String[] newStr = str.trim().split("\\s+"); (2)匹配二个或多个空格的正则表达式:\\s{2,} String str = new String("I am a good
String –> InputStream InputStrem is = new ByteArrayInputStream(str.getBytes()); //或者 ByteArrayInputStream stream = new ByteArrayInputStream(str.get
饿汉模式(立即加载) “饿汉模式”也就是立即加载,在使用类时对应的对象已经创建 public class MySingleton { private static MySingleton mySingleton = new MySingleton(); private MySin