ВАШ КОД - УТЕЧКА БЕЗОПАСНОСТИ .Представьте, что я вставил в веб-форму в поле pass:
whatever' OR TRUE;--
Я бы вошел в систему (просто вставьте эту строку в ваш запрос и распечатайте ее, посмотрите, чтоэто будет делать ...
Вам нужно использовать PreparedStatement
, заменить все переменные на вопросительные знаки.
У ВАШЕГО КОДА УТЕЧКА ПАМЯТИ .Connection и Statement и ResultSets - все ресурсы;им нужно явное закрытие.Узнайте о том, как использовать «try-with-resources» в java.
JSP - устаревшая технология, и ваша обработка исключений оставляет соединение плавающим.Вместо этого я предлагаю сделать: throw new ServletException(ex)
, по крайней мере, тогда вы выполняете обработку ошибок в нужном месте (контейнер сервлета).
Пустые страницы, вероятно, связаны с тем, как вы обрабатываете исключения (вы их регистрируете, а затемничего не делать, в результате чего пустая страница).Исправьте это, и теперь у вас есть фактическая ошибка, на которую вы можете посмотреть.