Java 无法使用json值包含的jackson的objectMapper分析json\\

Java 无法使用json值包含的jackson的objectMapper分析json\\,java,jackson-databind,Java,Jackson Databind,我正在使用jackson的ObjectMapper类将json字符串反序列化为普通java对象。ObjectMapper正在引发异常 我试图反序列化的json字符串是 String input="{\"id\":\"30329\",\"appId\":\"3301\",\"nodeId\":1556537156187,\"data\":\"select id,obt_marks,'\\\\m' as dummy from ltc_test_1\"}"; 导致问题的data key contai

我正在使用jackson的ObjectMapper类将json字符串反序列化为普通java对象。ObjectMapper正在引发异常

我试图反序列化的json字符串是

String input="{\"id\":\"30329\",\"appId\":\"3301\",\"nodeId\":1556537156187,\"data\":\"select id,obt_marks,'\\\\m' as dummy from ltc_test_1\"}";
导致问题的data key contains \的值是一种逃避此问题的方法。我希望此值与POJO中的值相同 它可以通过使用\\替换\的每次出现来工作,因此字符串看起来像
\“数据\”:“从ltc\U测试1中选择id、obt\U标记、\\\\m'作为虚拟对象”

问题:如何使用java实现这一点,objectMapper或Jackson中是否有解决此问题的设置

下面是我将在反序列化后得到的pojo

public class WorkflowProcessInfo {
    private Long id;
    private Long appId;
    private Long nodeId;
    private String data;
}

////Code I am using for deserialization 
ObjectMapper mapper = new ObjectMapper();
        mapper.configure(Feature.ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER, false);

        mapper.configure(Feature.ALLOW_UNQUOTED_FIELD_NAMES, true);
        mapper.configure(Feature.ALLOW_UNQUOTED_CONTROL_CHARS, true);
        mapper.configure(Feature.ALLOW_SINGLE_QUOTES, true);    mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY,
                true);

        mapper.setSerializationInclusion(Include.NON_NULL);

        try{
    return mapper.readValue(inputJson, WorkflowProcessInfo.class);
}catch(Exception e){
syso(e.getMessage())}
我期望
WorkflowProcessInfo
对象的值在json中表示,pojo的数据属性如下所示

WorkflowProcessInfo.data="select id,obt_marks,'\\m' as dummy from ltc_test_1"
相反,我得到以下例外

com.fasterxml.jackson.core.JsonParseException:无法识别的字符 在[Source:java.io]处转义'm'(代码109)。StringReader@1ea9f6af; 第1行第84列]