如何使用Twitter4j存储和加载用户

时间:2013-06-27 08:30:11

标签: java twitter4j

在Twitter4j中,您将获得如下的用户对象,

User user = twitter.showUser(userID);

现在,我想将此用户存储在文本文件中。我正在使用toString()的{​​{1}}方法。

它给了我以下内容:

User

问题:

  1. 使用UserJSONImpl{id=xxxxxx, name='xxxx xxxxx', screenName='xxxxxx', ... } toString()方法存储合法目的吗?

  2. 如何使用此User文字加载用户?我需要以下内容:

  3. User user = new User(UserJSONImpl);

1 个答案:

答案 0 :(得分:0)

我认为直接依赖toString()这是一个坏主意,因为此方法的更改不受您的控制。例如,如果格式更改或添加了新字段,该怎么办?你怎么知道什么时候反序列化数据?

您可以使用库以标准格式编写User个对象,例如使用GSON来编写JSON - 但它仍然不好,您必须处理UserJSONImpl对象,它是User的内部表示。

无论哪种方式,您仍然可能会面临User对象发生变化的风险。我会考虑使用User对象来构建与问题域相关的对象,然后保留这些对象。

我们的想法是,负责Twitter4J User -> problem domain object转换的组件可以处理不同的Twitter4J User对象,并为您的应用程序提供一致的视图。虽然没有更多的背景,这可能是完全矫枉过正的,但你应该能够更好地判断它。我希望这有点帮助!