public class ClassFilter extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
static String |
CLASS_NAME |
| 构造器和说明 |
|---|
ClassFilter() |
| 限定符和类型 | 方法和说明 |
|---|---|
static boolean |
arrayFilter(Class clazz)
检测数组类型是否在过滤列表
|
static boolean |
arrayFilter(String type)
检测数组类型是否在过滤列表
|
static String |
decodeObjectAndDate(String type)
对于java.lang.Object/java.util.Date对象, hessian序列化的时候写入类型是object/date,此处进行解析
|
static String |
encodeObjectAndDate(String type)
对于java.lang.Object/java.util.Date对象, hessian序列化时需要写入object/date,此处进行转换
|
static boolean |
filter(String type)
在反序列化类时, 会调用此方法检测是否是jdk类型, 一共包含两个维度, 一个从包名检测, 一个从指定的特殊类型中查找
|
static boolean |
filterExcludeClass(String type)
在反序列化类时, 会调用此方法检测是否是jdk类型, 一共包含两个维度, 一个从包名检测, 一个从指定的特殊类型中查找
需要注意的是java.lang.Class排除在过滤列表之外
|
static boolean |
nameFilter(String type)
在反序列化数组时,会调用此方法检测是否是jdk类型, 包含一个维度, 从指定的特殊类型中查找
不从包名检测的原因是, 数组类型是jdk类型, 但是存放的内容可能是子类, 子类反序列化为GenericObject无法放入数组
NAME_FILTER没有这个问题的原因是, 除了object和date外, 这几个类为final类,无法继承
type为date或者object时,返回false
|
public static final String CLASS_NAME
public static boolean filter(String type)
type - 类名称public static boolean filterExcludeClass(String type)
type - 类名称public static boolean nameFilter(String type)
type - 类名称public static String encodeObjectAndDate(String type)
type - 类名称public static String decodeObjectAndDate(String type)
type - 类名称public static boolean arrayFilter(Class clazz)
clazz - 类public static boolean arrayFilter(String type)
type - 类名称Copyright © 2008–2018 Ant Financial. All rights reserved.