package com.fasterxml.jackson.databind.ser.std;

import com.fasterxml.jackson.databind.annotation.JacksonStdImpl;

Simple general purpose serializer, useful for any type for which Object.toString returns the desired JSON value.

Since 2.10 extends ToStringSerializerBase

/** * Simple general purpose serializer, useful for any * type for which {@link Object#toString} returns the desired JSON * value. *<p> * Since 2.10 extends {@link ToStringSerializerBase} */
@JacksonStdImpl @SuppressWarnings("serial") public class ToStringSerializer extends ToStringSerializerBase {
Singleton instance to use.
/** * Singleton instance to use. */
public final static ToStringSerializer instance = new ToStringSerializer();

Note: usually you should NOT create new instances, but instead use instance which is stateless and fully thread-safe. However, there are cases where constructor is needed; for example, when using explicit serializer annotations like JsonSerialize.using.

/** *<p> * Note: usually you should NOT create new instances, but instead use * {@link #instance} which is stateless and fully thread-safe. However, * there are cases where constructor is needed; for example, * when using explicit serializer annotations like * {@link com.fasterxml.jackson.databind.annotation.JsonSerialize#using}. */
public ToStringSerializer() { super(Object.class); }
Sometimes it may actually make sense to retain actual handled type.
Since:2.5
/** * Sometimes it may actually make sense to retain actual handled type. * * @since 2.5 */
public ToStringSerializer(Class<?> handledType) { super(handledType); } @Override public final String valueToString(Object value) { return value.toString(); } }