当前位置: 首页>>代码示例>>Java>>正文


Java JsonContext类代码示例

本文整理汇总了Java中jodd.json.JsonContext的典型用法代码示例。如果您正苦于以下问题:Java JsonContext类的具体用法?Java JsonContext怎么用?Java JsonContext使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


JsonContext类属于jodd.json包,在下文中一共展示了JsonContext类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: serializeMap

import jodd.json.JsonContext; //导入依赖的package包/类
private static boolean serializeMap(final JsonContext jsonContext, Map<?, ?> map) {
    if (jsonContext.pushValue(map)) {
        // prevent circular dependencies
        return false;
    }
    jsonContext.writeOpenObject();
    boolean notfirst = false;
    for (Map.Entry<?, ?> entry : map.entrySet()) {
        final Object value = entry.getValue();
        if (value == null) {
            continue;
        }
        final Object key = entry.getKey();
        jsonContext.pushName(key != null ? key.toString() : null, notfirst);
        jsonContext.serialize(value);
        if (!notfirst && jsonContext.isNamePopped()) {
            notfirst = true;
        }
    }
    jsonContext.writeCloseObject();
    jsonContext.popValue();
    return true;
}
 
开发者ID:febit,项目名称:febit,代码行数:24,代码来源:Json.java

示例2: serializeValue

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public void serializeValue(JsonContext jsonContext, Map<?, ?> map) {
	jsonContext.writeOpenObject();

	int count = 0;

	Path currentPath = jsonContext.getPath();

	for (Map.Entry<?, ?> entry : map.entrySet()) {
		Object key = entry.getKey();
		Object value = entry.getValue();

		count = serializeKeyValue(jsonContext, currentPath, key, value, count);
	}

	jsonContext.writeCloseObject();
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:18,代码来源:MapJsonSerializer.java

示例3: serializeValue

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public void serializeValue(JsonContext jsonContext, Object array) {
	jsonContext.writeOpenArray();

	int length = getLength((K[]) array);
	int count = 0;

	for (int i = 0; i < length; i++) {
		if (count > 0) {
			jsonContext.writeComma();
		}

		if (jsonContext.serialize(get((K[]) array, i))) {
			count++;
		}
	}

	jsonContext.writeCloseArray();
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:20,代码来源:ArraysJsonSerializer.java

示例4: serializeValue

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public void serializeValue(JsonContext jsonContext, Iterable iterable) {
	jsonContext.writeOpenArray();

	int count = 0;

	for (Object element : iterable) {
		if (count > 0) {
			jsonContext.writeComma();
		}

		if (jsonContext.serialize(element)) {
			count++;
		}
	}

	jsonContext.writeCloseArray();
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:19,代码来源:IterableJsonSerializer.java

示例5: serializeObject

import jodd.json.JsonContext; //导入依赖的package包/类
private static boolean serializeObject(final JsonContext jsonContext, final Object source) {
    if (jsonContext.pushValue(source)) {
        // prevent circular dependencies
        return false;
    }
    InternalJsonContext internalJsonContext = (InternalJsonContext) jsonContext;
    internalJsonContext.writeOpenObject();
    final PropertyDescriptor[] propertyDescriptors = ClassIntrospector.lookup(source.getClass()).getAllPropertyDescriptors();
    boolean notfirst = false;
    for (PropertyDescriptor propertyDescriptor : propertyDescriptors) {
        final String propertyName = propertyDescriptor.getName();
        if (internalJsonContext.isExcluded(source, propertyName)) {
            continue;
        }
        final Getter getter = propertyDescriptor.getGetter(false);
        if (getter == null) {
            continue;
        }
        final Object value;
        try {
            value = getter.invokeGetter(source);
        } catch (InvocationTargetException | IllegalAccessException ex) {
            throw new JsonException(ex);
        }
        if (value == null) {
            continue;
        }
        internalJsonContext.pushName(propertyName, notfirst);
        internalJsonContext.serialize(value);
        if (!notfirst && internalJsonContext.isNamePopped()) {
            notfirst = true;
        }
    }
    internalJsonContext.writeCloseObject();
    jsonContext.popValue();
    return true;
}
 
开发者ID:febit,项目名称:febit,代码行数:38,代码来源:Json.java

示例6: serializeLongArray

import jodd.json.JsonContext; //导入依赖的package包/类
private static boolean serializeLongArray(JsonContext jsonContext, long[] array) {
    jsonContext.writeOpenArray();
    for (int i = 0; i < array.length; i++) {
        if (i > 0) {
            jsonContext.writeComma();
        }
        jsonContext.write(new StringBuilder().append('\"').append(array[i]).append('\"'));
    }
    jsonContext.writeCloseArray();
    return true;
}
 
开发者ID:febit,项目名称:febit,代码行数:12,代码来源:Json.java

示例7: addSerializer

import jodd.json.JsonContext; //导入依赖的package包/类
public static final <T> void addSerializer(JsonSerializer mapper, Class<T> type,
		BiConsumer<T, JsonContext> consumer) {
	mapper.withSerializer(type, new TypeJsonSerializer<T>() {

		@Override
		public final boolean serialize(JsonContext ctx, T value) {
			consumer.accept(value, ctx);
			return true;
		}

	});
}
 
开发者ID:berkesa,项目名称:datatree-adapters,代码行数:13,代码来源:JsonJodd.java

示例8: serialize

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public boolean serialize(JsonContext jsonContext, double[] array) {
	jsonContext.writeOpenArray();

	for (int i = 0; i < array.length; i++) {
		if (i > 0) {
			jsonContext.writeComma();
		}
		jsonContext.write(Double.toString(array[i]));
	}

	jsonContext.writeCloseArray();

	return true;
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:16,代码来源:DoubleArrayJsonSerializer.java

示例9: serialize

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public boolean serialize(JsonContext jsonContext, int[] array) {
	jsonContext.writeOpenArray();

	for (int i = 0; i < array.length; i++) {
		if (i > 0) {
			jsonContext.writeComma();
		}
		jsonContext.write(Integer.toString(array[i]));
	}

	jsonContext.writeCloseArray();

	return true;
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:16,代码来源:IntArrayJsonSerializer.java

示例10: serializeValue

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public void serializeValue(final JsonContext jsonContext, Object value) {
	jsonContext.writeOpenObject();

	BeanSerializer beanVisitor = new BeanSerializer(jsonContext, value);
	beanVisitor.serialize();

	jsonContext.writeCloseObject();
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:10,代码来源:ObjectJsonSerializer.java

示例11: serialize

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public boolean serialize(JsonContext jsonContext, File file) {
	switch (serializationType) {
		case PATH:
			jsonContext.writeString(file.getAbsolutePath());
			break;
		case NAME:
			jsonContext.writeString(file.getName());
			break;
		case CONTENT: {
				byte[] bytes;

				try {
					bytes = FileUtil.readBytes(file);
				}
				catch (IOException e) {
					throw new JsonException("Unable to read files content", e);
				}

				String encoded = Base64.encodeToString(bytes);

				jsonContext.writeString(encoded);
			}
			break;
		default:
			throw new JsonException("Invalid type");
	}
	return true;
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:30,代码来源:FileJsonSerializer.java

示例12: serialize

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public boolean serialize(JsonContext jsonContext, float[] array) {
	jsonContext.writeOpenArray();

	for (int i = 0; i < array.length; i++) {
		if (i > 0) {
			jsonContext.writeComma();
		}
		jsonContext.write(Float.toString(array[i]));
	}

	jsonContext.writeCloseArray();

	return true;
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:16,代码来源:FloatArrayJsonSerializer.java

示例13: serialize

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public boolean serialize(JsonContext jsonContext, long[] array) {
	jsonContext.writeOpenArray();

	for (int i = 0; i < array.length; i++) {
		if (i > 0) {
			jsonContext.writeComma();
		}
		jsonContext.write(Long.toString(array[i]));
	}

	jsonContext.writeCloseArray();

	return true;
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:16,代码来源:LongArrayJsonSerializer.java

示例14: serialize

import jodd.json.JsonContext; //导入依赖的package包/类
@Override
public boolean serialize(JsonContext jsonContext, boolean[] array) {
	jsonContext.writeOpenArray();

	for (int i = 0; i < array.length; i++) {
		if (i > 0) {
			jsonContext.writeComma();
		}
		jsonContext.write(Boolean.toString(array[i]));
	}

	jsonContext.writeCloseArray();

	return true;
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:16,代码来源:BooleanArrayJsonSerializer.java

示例15: serialize

import jodd.json.JsonContext; //导入依赖的package包/类
/**
 * Detects circular dependencies and pushes value as current
 * type context.
 */
public final boolean serialize(JsonContext jsonContext, T value) {
	if (jsonContext.pushValue(value)) {
		// prevent circular dependencies
		return false;
	}

	serializeValue(jsonContext, value);

	jsonContext.popValue();

	return true;
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:17,代码来源:ValueJsonSerializer.java


注:本文中的jodd.json.JsonContext类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。