common_helper/src/main/java/com/xiongyingqi/jackson/helper/ThreadJacksonMixInHolder.java
public static org.codehaus.jackson.map.ObjectMapper builderCodehausMapper() {
        ThreadJacksonMixInHolder holder = holderThreadLocal.get();
        if (holder.codehausMapper == null && isContainsMixIn()) {
            holder.codehausMapper = new org.codehaus.jackson.map.ObjectMapper();
            for (Map.Entry<Class<?>, Class<?>> mixIn : holder.mixIns) {
                holder.codehausMapper.getDeserializationConfig().addMixInAnnotations(mixIn.getKey(), mixIn.getValue());
                holder.codehausMapper.getSerializationConfig().addMixInAnnotations(mixIn.getKey(), mixIn.getValue());
            }
        }
        clear();// 如果不调用clear可能导致线程内的数据是脏的！
        return holder.codehausMapper;
    }
public static org.codehaus.jackson.map.ObjectMapper builderCodehausMapper() {
        ThreadJacksonMixInHolder holder = holderThreadLocal.get();
        if (holder.codehausMapper == null && isContainsMixIn()) {
            holder.codehausMapper = new org.codehaus.jackson.map.ObjectMapper();
            for (Map.Entry<Class<?>, Class<?>> mixIn : holder.mixIns) {
                holder.codehausMapper.getDeserializationConfig().addMixInAnnotations(mixIn.getKey(), mixIn.getValue());
                holder.codehausMapper.getSerializationConfig().addMixInAnnotations(mixIn.getKey(), mixIn.getValue());
            }
        }
        clear();// 如果不调用clear可能导致线程内的数据是脏的！
        return holder.codehausMapper;
    }
public static org . codehaus . jackson . map . ObjectMapper builderCodehausMapper ( ) { ThreadJacksonMixInHolder holder = holderThreadLocal . get ( ) ; if ( holder . codehausMapper == null && isContainsMixIn ( ) ) { holder . codehausMapper = new org . codehaus . jackson . map . ObjectMapper ( ) ; for ( Map . Entry < Class < ? > , Class < ? > > mixIn : holder . mixIns ) { holder . codehausMapper . getDeserializationConfig ( ) . addMixInAnnotations ( mixIn . getKey ( ) , mixIn . getValue ( ) ) ; holder . codehausMapper . getSerializationConfig ( ) . addMixInAnnotations ( mixIn . getKey ( ) , mixIn . getValue ( ) ) ; } } clear ( ) ; // 如果不调用clear可能导致线程内的数据是脏的！ return holder . codehausMapper ; }
根据当前MixIn集合生成objectMapper

@return
根据当前MixIn集合生成objectMapper