我在我的程序中对struts2执行了这个执行方法操作,它验证了我的网页中的登录表单,检查了一个名为listaUsuarios的arraylist,其中存储了我的usuarioBean对象,以查找这些属性中的用户名和密码是否相等
public String executeLogin() {
String go = ERROR;
for (Usuario u : s.getListaUsuarios()) {
if (usuarioBean.getNombreUsuario().equals(u.getNombreUsuario())) {
if (usuarioBean.getContrasenna().equals(u.getContrasenna())) {
if (u instanceof Administrador) {
go="admin";
break;
}
if (u instanceof Cliente) {
go="cliente";
break;
}
if (u instanceof Proveedor) {
go="proveedor";
break;
}
}
}
}
return go;
}
这不起作用,它不验证任何东西,但如果我输入我的登录表单,这个硬编码方法,它可以工作,所以我不确定发生了什么
public String executeLogin() {
String go = ERROR;
if (usuarioBean.getNombreUsuario().equals("jean182")) {
if (usuarioBean.getContrasenna().equals("123")) {
go = "admin";
}
}
return go;
}
答案 0 :(得分:0)
您是否打印了从表单中读取的字符串?问题可能是那些不等于存储的那些(末尾的空格,大写/小写)