在我的应用程序中,我有一个文本字段,它映射到操作类中的日期。如果我输入 15/12/2011 (MM/dd/yyyy),它会自动将其转换为 03/12/2012(MM/dd/yyyy)。
我的代码是:
jsp页面:
<s:textfield name="drDt" id="drDt" />
Action 类:
private Date drDt;
public Date getDrDt() {
return drDt;
}
public void setDrDt(Date drDt) {
this.drDt = drDt;
}
问题出在代码上:
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
sdf.parse(dateValue);
上面的语句有问题。
最佳答案
这是“默认”行为。否则,设置dateFormat.setLenient()
为假
。将其设置为 false
将在遇到无效日期(如示例中的日期)时抛出 Exception
。你需要优雅地处理这件事。也许,向用户显示一条消息,表明输入的日期不正确或无效。准确地说,添加 validator 来验证用户输入。
关于java - Struts2 Java Util日期转换问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6290088/