gpt4 book ai didi

java - 在 Struts 2 中对特定字段进行手动验证

转载 作者:搜寻专家 更新时间:2023-10-31 19:39:45 25 4
gpt4 key购买 nike

例如,我有一个名为 UsersActionAction 类,其中我有一些方法,例如:loginlogout注册等。

我编写了如下validate()方法:

@Override
public void validate() {
if ("".equals(username)) {
addFieldError("username", getText("username.required"));
}
if ("".equals(email)) {
addFieldError("email", getText("email.required"));
} else if (!Utils.isValidEmail(email)) {
addFieldError("email", getText("invalid.email.address"));
}
if ("".equals(phone)) {
addFieldError("phone", getText("phone.required"));
}
if ("".equals(password)) {
addFieldError("password", getText("password.required"));
}
}

问题是此解决方案仅在调用注册操作时有效,无论如何它不会在登录或注销时工作,因为它会检查字段是否不为空或电子邮件是否正确并且总是会给出错误。好的,注销的解决方案是在其上方添加 @SkipValidation 注释,但我不知道如何告诉它登录只有 2 个字段 usernamepassword 并且也不需要检查 emailphone。我不想为每个 Action 部分写一个 Action 类,因为 Struts 2 的目的不是这个。

最佳答案

创建 validateMethodName 方法,其中 methodName 是方法的名称,例如,

validateLogin() { ... }

否则,请为您的validate 方法提供某种形式的上下文信息。

关于java - 在 Struts 2 中对特定字段进行手动验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17304011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com