POJO具有byte []字段,但是与之对应的JSON具有字符串字段。如何将字符串转换为byte []?

时间:2018-08-16 09:47:26

标签: java json jackson

我的POJO具有以下结构:

class SomeName
{
       .... // some fields
       private byte[] message;
       ....
       .... // some functions
       public byte[] getMessage() 
       {
           return message;
       }
}

我的JSON文件中有一个名为“ message”的字段,其中存储了一个字符串。目前,我正在使用 com.fasterxml.jackson.databind.ObjectMapper 中的ObjectMapper。语法是

ObjectMapper mapper = new ObjectMapper();
SomeName myObjects = mapper.readValue(jsonData, new TypeReference<SomeName>() {});

为此解决方案或替代解决方案(篡改POJO或JSON之外)是否有办法?

1 个答案:

答案 0 :(得分:2)

您可以使用GSON Liberary这样操作。如果您不喜欢杰克逊图书馆。希望您能从这一部分得到答案。

 public class JsonParse
 {
    public static void main(String... args)
    {
        Employee product = new Employee("JSON");
        Gson gson = new GsonBuilder().create(); 
        gson = new 
        GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
        String result = gson.toJson(product);
        System.out.println(result);
    }
 }

class Employee
{

  @Expose
  private byte [] name;

  public Employee(String name)
  {
     this.name = name.getBytes();
  }

}