【发布时间】:2012-07-11 18:24:15
【问题描述】:
我正在开发一个网站,该网站使用促销代码为用户提供该网站的免费会员资格。会员注册的级别是促销代码对象的属性,并以整数形式存储在数据库中,1 或 2。但是,会员级别属性与网站 UI 相关的唯一时间是与特定促销代码相关联的着陆页。因此,对于这种情况,我不希望 JSON 忽略成员级别。在用户返回网站并拥有与其帐户关联的促销代码对象后,我们不再关心他们的会员级别,因此我希望 JSON 忽略会员级别属性。
所以我的问题是,是否可以在每次访问的基础上将对象的属性设置为@JSONIgnore,或者只能忽略或不忽略属性?换句话说,有没有像object.getAttribute().setAttributeJSONIgnore(true | false) 这样的方法?
【问题讨论】:
-
见:stackoverflow.com/questions/11232045/…。您不能在运行时选择性地打开/关闭
@JsonIgnore。 -
我认为这个问题表明应用程序业务逻辑被放置在错误的位置。我建议让数据序列化/反序列化(传输)层尽可能地笨拙,并将业务逻辑放在人们期望的地方,并且更容易维护。