所以我有一个非常普通的Create User小文件,它有一个doPost方法,如下所示
1)从请求中获取电子邮件参数 2)检查String是否实际上是有效的电子邮件地址
if(!UserUtils.ValidEmailAddress(Email))
{
// Exception Handeling for Invalid Email Address
// Redirect to Appropriate JSP
}
问题是 如果ValidEmailAddress方法返回true,则if语句将为false,代码将跳过if语句并正常进行...这正是我想要的。但是,如果这是一个荣耀的电子邮件地址会怎样。 if语句中的代码将被执行,以重定向到适当的jsp结束(这很好)但在此之后它将继续创建用户实体并为其分配所有参数(在重定向请求之后),或者在重定向时,servlet代码执行终止(希望如此)。不喜欢有很多嵌套的if语句,所以有人可以澄清一下这里发生了什么,以及处理这种验证的最佳方法是什么。非常感谢你们!
答案 0 :(得分:0)
重定向后添加此行:
return;
或者,您可以转发到JSP,而不是使用重定向。
最后,你可以简单地说:
if(!UserUtils.ValidEmailAddress(Email)) {
// redirect
} else {
// save entity
}