我正在用Java对类进行建模以存储JSON,以用于特定的JSON

  "id":1,
  "firstName":"sample",
  "lastName":"person",
   "Books":{
    "bookName":"gone with the wind"
    "isbn":  12345
    }


我用class person等创建了一个int id , String firstName ...
存储bookName的最佳方法是什么,用class BooksString bookName制成int isbn,我将如何在person类中将书表示为数组?因为书总是只有一种价值,有没有更好的方式来代表它

最佳答案

对于json序列化/反序列化,我建议使用jackson库。这是我的代码,可以在我的计算机上正常工作!

我将json存储在名为json.data的文件中,如下所示:



{"id":1,
 "firstName":"sample",
 "lastName":"person",
 "books":[{"bookName":"gone with the wind","isbn":12345}]
}




和代码,我省略了getter / setter的简短描述

public class Book
{
    private String bookName;
    private int isbn;

}

public class BookWriter
{
    private String id;
    private String firstName;
    private String lastName;
    private Book[] books;
}

public class JSONTest
{
    public static void main(String[] args)
    {
        try
        {
            ObjectMapper mapper = new ObjectMapper();
            BookWriter writer=(BookWriter)mapper.readValue(new File("json.data"), BookWriter.class);
            for(Book book:writer.getBooks())
            {
            System.out.println(book.getBookName()+","+book.getIsbn());
            }
        } catch (Exception e)
        {
            e.printStackTrace();
        }
    }

}

07-24 09:38
查看更多