我有一个简单的java pojo,我给了我的Android用户:
@XmlRootElement
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class PostAccount {
@Getter
@Setter
private String email;
@Getter
@Setter
private String pass1;
@Getter
@Setter
private String pass2;
}
这个pojo被序列化为json并发送到我的服务器。在我的服务器上我使用泽西豆验证:
public NumberResult add(@Valid ValidAccount account) {
但是因为Account pojo没有任何验证注释,验证不会做太多。
我可以使用验证注释创建第二个pojo并在服务器端使用它:
public class ValidAccount {
@Getter
@Setter
@NotEmpty
@CheckEmail
private String email;
@Getter
@Setter
@NotBlank
private String pass1;
@Getter
@Setter
@NotBlank
private String pass2;
}
完美无缺。
但是当我现在在Account pojo中添加一个字段时,我必须记得更改ValidAccount pojo。没问题,但是当你有很多pojo时,事情变得复杂起来。
有更好的解决方案吗?
例如,是否可以扩展Account pojo并以某种方式添加验证规则? (请我继续使用注释,xml给我毛骨悚然)