我想用gson序列化对象树。它工作正常,但我不想转移整个树。特别是我想生成子对象的链接。
例如:
class BookStrore {
public String name;
public List<Book> books;
}
class Book {
public int id;
public String name;
}
序列化BookStore实例会导致类似:
{ name : 'bookStoreName', 'books' : [ { id: '3', name: 'blubb' }, ... ] }
但希望有以下链接:
{ name: 'bookStoreName', 'books': [ book: 'http://example.com/book/3', ... ] }
有谁知道如何使用GSON实现这一目标? 我不是坚持GSON。如果有人有其他解决方案,欢迎。
答案 0 :(得分:0)
我认为你可以找到一个带注释的答案
{{3p>
答案 1 :(得分:0)
感谢您的链接。它让我从另一个角度再次思考这个问题。我终于认识到问题在于我的方法,因为如果声称“BookStore”有一个书籍列表,那么必须有一个书籍列表而不是一个参考列表。当然,在Java中,书籍列表也是参考列表。所以我可以开始生成代理。为此,我必须修改序列化器/解串器。但是这会违反默认情况,在我的情况下是java编程模型。另一种方法是,我更喜欢因为它更清晰的系统独立,以创建特殊的数据传输对象。在这种情况下,BookLinks让BookStore类包含BookLinks列表。我认为这是正确的方式,因为它揭示了它是什么,一个链接而不是一个对象。