自定义注释以基于另一个字段格式化字段

时间:2018-09-27 21:11:28

标签: java spring spring-boot annotations

我有一个Spring Boot 2项目,需要基于另一个字段来格式化实体中的字段。如果'active'为false,则下面实体中的'name'字段需要使用'name'+“(Invalid)”的格式,否则,如果为true,则需要删除“(Invalid)”。此示例是最简单的情况。实际上,大约有30个类需要应用此逻辑。每个人都有一个“活动”字段,但“名称”可以是任何内容。

public class Entity {
  private String name;
  private boolean active;

  // getters and setters
}

我考虑过两种选择:

  1. 缺少setActive(boolean active)方法可基于“ active”值添加或删除“(Invalid)”。我不想这样做,因为要破解的课程超过30个。
  2. 创建一个自定义注释,该注释将应用逻辑来添加或删除“(无效)”到“名称”字段。
  3. 我想不到的另一个选择。

是否可以创建一个自定义注释来做到这一点?如果可以,怎么办?

在我的研究中,我想出了如何基于反射来设置值。并创建一个自定义注释。我对如何让Spring看到它以及何时执行它感到困惑。

0 个答案:

没有答案