Я работаю с Java-сетью (Filters), и я хочу перенаправить на другую страницу JSP, если пользователь вошел в систему с некоторыми учетными данными.Правильное использование if и else
Если я вводим учетные данные для клиента, он регистрируется в порядке, но если я хочу войти в систему как супервизор, он перенаправляет меня на несанкционированный вход в систему. Я думаю, что это для моих if
и else
использования.
Вот мой код (сделать фильтр):
try {
String usr = request.getParameter("usr");
String pswd = request.getParameter("password");
if (usr == null && pswd == null) {
request.getRequestDispatcher("index.html").forward(request, response);
}
if(usr.equals("Client") && pswd.equals("123")) {
request.getRequestDispatcher("/Client.jsp").forward(request, response);
}
else {
request.getRequestDispatcher("/unautorized.jsp").forward(request, response);
}
if (usr.equals("Supervisor") && pswd.equals("123")) {
request.getRequestDispatcher("/Supervisor.jsp").forward(request, response);
}
else {
request.getRequestDispatcher("/unautorized.jsp").forward(request, response);
}
if (usr.equals("Checker") && pswd.equals("123")) {
request.getRequestDispatcher("/Checker.jsp").forward(request, response);
}
else {
request.getRequestDispatcher("/unautorized.jsp").forward(request, response);
}
chain.doFilter(request, response);
Почему остановиться на первом else
?
Вы, вероятно, следует иметь в виду, что использование '&' как логический оператор означает выражение не закорочены (т.е. вы всегда оценивать оба выражения, даже если это может быть не обязательно). В зависимости от того, что вы пытаетесь сделать здесь, используя '&&', вероятно, лучше. –
Ваш руководитель не клиент. – BalusC
yap, я могу использовать '||', но он перенаправляет супервизор или checker на Client.jsp, и мне нужно перенаправление супервизора в Supervisor.jsp – Joan