繁体   English   中英

如何在JSF中验证自己字段的字段?

[英]How to validate fields of own fields in JSF?

听起来很奇怪 但是我需要验证“个人公司”领域的地址。 公司是人员领域,而地址是公司领域。

我要验证“公司内人”实体的地址。

为什么?? 因为如果我之前不在Person实体中使用公司,公司应该有一个地址?

我如何实现此验证?

@Entity
@Table(schema = Constants.DB_SCHEMA)
public class Person{
   Company company;

  // Validation of the address should come here ???
    public Company getCompany() {
        return company;
    }
}

@Entity
@Table(schema = Constants.DB_SCHEMA)
public class Company{
   String address;
}

基本上,您可以使用Company类的address属性上的@NotNull注释来实现。

但是:您当前的代码无论如何将无法正常工作,因为您尚未指定类之间的关系并且没有主键。

这是一个示例它如何工作的:

@Entity
public class Person {

    @Id
    @GeneratedValue
    private Long id;

    @OneToOne(cascade= CascadeType.ALL)
    private Company company;

    public Company getCompany() {
        return company;
    }

    public void setCompany(Company company) {
        this.company = company;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }    
}

@Entity
public class Company {

    @Id
    @GeneratedValue
    private Long id;

    @NotNull
    private String adress;

    public String getAdress() {
        return adress;
    }

    public void setAdress(String adress) {
        this.adress = adress;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM