rg.crazycake.shiro.exception.PrincipalInstanceException: class java.util.HashMap must has getter for field: idWe need a field to identify this Cache Object in Redis. So you need to defined an id field which you can get unique id to identify this prin…
一.java.util.HashMap 1.1 java.util.HashMap 综述 java.util.HashMap继承结构如下图 HashMap是非线程安全的,key和value都支持null HashMap的节点是链表,节点的equals比较的是节点的key和value内容是否相等. static class Node<K,V> implements Map.Entry<K,V> { final int hash; final K key; V value; Node&…
问题背景:从前端传来的json字符串中取某些值,拼接成json格式入参调外部接口. 报如下错: java.lang.ClassCastException: java.util.HashMap cannot be cast to java.lang.String at com.taobao.hsf.proxy.bytecode.proxy31.registerCancellation(proxy31.java) at com.ohaotian.approval.controller.spzx.Te…
在java jdk8中对HashMap的源码进行了优化,在jdk7中,HashMap处理“碰撞”的时候,都是采用链表来存储,当碰撞的结点很多时,查询时间是O(n). 在jdk8中,HashMap处理“碰撞”增加了红黑树这种数据结构,当碰撞结点较少时,采用链表存储,当较大时,采用红黑树(特点是查询时间是O(logn))存储(有一个阀值控制,大于阀值,将链表存储转换成红黑树存储) HashMap的样子就变成下图的样子: 下面对源码进行分析: public class HashMap<K,V> ex…
问题: 在整合spring+cxf时报错java.util.Map is an interface, and JAXB can't handle interfaces. 解决方法: 将服务端的services接口返回的Map类型的值改为HashMap. 因为在做webService复杂类型值传递时,返回值的类型不要用接口类型.例如List应该改为ArrayList,Map改为HashMap等.…