JSF - 输入文本 - 默认值

  • 本文关键字:默认值 文本 JSF jsf
  • 更新时间 :
  • 英文 :


我有一个问题。如果我想在 h:inputText 中启动时显示"默认值",我应该使用默认值进行第二个 getter 吗?例如:我的实体有字段:

private int yellowCards;
public int getYellowCards() {
    return yellowCards;
}
public void setYellowCards(int yellowCards) {
    this.yellowCards += yellowCards;
}

在DB有3张黄牌。现在我想为这个实体添加另一个统计数据 - 下一张黄牌。但我不想在视图"3"上的输入文本中出现"3",而是默认为"0"。有没有办法设置此字段的"默认"值或仅为此视图添加第二个 getter?(因为在其他视图中,我需要使用这个第一个 getter 来显示所有统计数据(。

使用 bean 的回调方法:@PostConstruct ,这将允许您在页面呈现之前完成这些操作:

private int yellowCards;
@PostConstruct
public void init(){
    yellowCards = 0;
}
// getter/setter
@Field
private int minutesPlayed;     
@Transient
private int STATminutesPlayed;
public int getSTATminutesPlayed() {
    return 90;
}
public void setSTATminutesPlayed(int STATminutesPlayed) {
     setMinutesPlayed(STATminutesPlayed);
}
public int getMinutesPlayed() {
    return minutesPlayed;
}
public void setMinutesPlayed(int minutesPlayed) {
    this.minutesPlayed += minutesPlayed;
}

我认为这是最好的方法。用于添加统计数据的 STAT 字段和 getter/setter 和分钟与 getter/setter 一起玩,以便将来显示所有统计数据,也可以在其他视图中编辑它们。

最新更新