当前位置: 首页 > 知识库问答 >
问题:

如何反序列化布尔字符串

杜元明
2023-03-14

我有一个这样的财产:

    @CatalogExportField(columnName = "K", headerName = "catalog name")
private Boolean mpAvailable;

我需要在其他类中解析时将其作为字符串

   private CatalogExportDto convert(Variant variant, boolean willHaveProductTypeFields) {
    CatalogExportDto dto = new CatalogExportDto()


        .setMpAvailable(variant.isMpAvailable())

但这里是布尔值。

我想我需要做这样的事情。

    @JsonDeserialize(using = BooleanDeserializer.class)
@JsonProperty("Timestamp")
ZonedDateTime timestamp;
@CatalogExportField(columnName = "K", headerName = "catalog nae")
private Boolean mpAvailable;

还有一个像这样的班级

public class BooleanDeserializer {
@Override
public Object deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {

但找不到合适的例子。

这也是

    @Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface CatalogExportField {

    String color() default "#56aaff";

    String columnName() default "";

    String headerName() default "";

    String displayName() default "";
}

共有1个答案

宋琛
2023-03-14

你可以使用jackson,它会自动反现实化你是布尔人,StackOverflow中有很多例子:

Jackson通过删除is来重命名原始布尔字段

Fasterxml Jackson会自动将非布尔值转换为布尔值

当然,你也可以按照自己的习惯:

https://hussainpithawala.wordpress.com/2011/05/11/overriding-default-serializationdeserialization-behaviour-of-jackson-json-serializer/

 类似资料:
  • 问题内容: 快速提问: 在JSONNet中-如何获取布尔true / false以序列化为布尔1/0 我可以看到我们如何处理空值,而所有这些似乎都找不到如何执行此操作。 这可能吗? 问题答案: 您可以像这样实现自定义转换器:

  • 问题内容: 如何将上述字符串反序列化为java对象。 我正在使用的类是 问题答案: @基达 我假设您可以控制JSON输入字符串的创建方式。我认为JSON字符串格式不正确,无法对地图类型进行默认的GSON反序列化。 我已经修改了输入字符串供您考虑,这将导致非null的LocalLocationId 如果我对输入字符串的假设不正确,请发表评论。 编辑1:由于无法修改输入,请考虑编写自定义解串器。以下是

  • 我的JSON如下所示: 我的课程如下所示: 如何反序列化到映射如和到

  • 我尝试从一个用于存储Spring会话的Redis服务器反序列化String到Java对象,并且我想在Spring框架之外反序列化它。我认为Spring Redis序列化器可能使用默认字符集UTF-8来将Java对象序列化为字符串。 Redis中的字符串: 错误消息: 我知道用UTF-8在Byte[]和String之间的转换很可能是问题所在,但我还是想问一下,是否有人知道如何在不修改序列化部分的情况

  • 我试图反序列化这个json对象数组: 我的java类看起来像这样: 问题在于json的tags属性,它可以是空字符串或数组。现在gson给了我一个错误: 我应该如何反序列化这个json? 我对这个json没有任何控制,它来自第三方api。

  • 问题内容: 我有数据类/表“ User”,其中有“ preferences”列 首选项类型为TEXT,我在其中存储JSON。 所以价值是 如何使用一些注释将其包装起来,以便像 或无需包装到数据对象中 我想可能会有一些Jackson注释可以添加到字段中,例如 我对JPA相当陌生,文档非常丰富。 我相信我的情况很普遍。谁能举任何例子? 问题答案: 老实说,我认为最好的解决方案是为属性创建一个单独的表(