В этом руководстве мы собираемся разработать примеры программ с использованием JSP и архитектуры MVC.
Следующие примеры программ будут разработаны -
- Форма регистрации
- Форма входа и выхода
Использование регистрационной формы через JSP
В регистрационной форме у нас будет форма для заполнения всех деталей, которые будут содержать имя, имя пользователя, пароль, адрес, контактный номер и т. Д.
Эта форма поможет нам зарегистрироваться в приложении. Они берут все наши данные и хранят их в базе данных или кеше.
В этом примере мы возьмем «Регистрационную форму гуру», которая имеет следующие поля:
- Имя
- Фамилия
- Имя пользователя
- Пароль
- Адрес
- Контактный телефон
После заполнения всех этих данных у нас есть кнопка отправки, при нажатии на которую все данные будут сохранены.
Register_1.jsp
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Форма регистрации гуру Форма регистрации гуру
Расшифровка кода:
Строка кода 11: Здесь мы берем имя формы, у которой есть действие, т.е. сервлет, на который будет обрабатываться запрос, и имя сервлета - guru_register.java. Запрос будет обработан методом POST.
Строка кода 14-16: здесь мы принимаем тип ввода как текст, а имя - это имя.
Строка кода 18-20: здесь мы берем тип ввода как текст, а имя - фамилию.
Строка кода 22-24: здесь мы берем тип ввода как текст, а имя - имя пользователя.
Строка кода 26-28: здесь мы принимаем тип ввода в качестве пароля (это скроет пароль при вводе) и имя в качестве пароля.
Строка кода 30-32: здесь мы берем тип ввода как текст и имя как адрес
Строка кода 34-36: здесь мы берем тип ввода как текст и имя как контакт
Строка кода 37: Здесь мы берем кнопку типа submit, и значение также submit. При нажатии этой кнопки действие перейдет к соответствующему сервлету guru_register, где все значения параметров будут переданы в запрос.
Guru_register.java
демотест пакета;import java.io.IOException;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/ *** Класс реализации сервлета guru_register* /открытый класс guru_register расширяет HttpServlet {частный статический финальный длинный serialVersionUID = 1L;protected void doPost (запрос HttpServletRequest, ответ HttpServletResponse) выбрасывает ServletException, IOException {// TODO Заглушка автоматически сгенерированного методаСтрока first_name = request.getParameter ("first_name");Строка last_name = request.getParameter ("last_name");Строка username = request.getParameter ("имя пользователя");Строка password = request.getParameter («пароль»);Строка address = request.getParameter («адрес»);Строка contact = request.getParameter («контакт»);if (first_name.isEmpty () || last_name.isEmpty () || username.isEmpty () ||password.isEmpty () || address.isEmpty () || contact.isEmpty ()){RequestDispatcher req = request.getRequestDispatcher ("register_1.jsp");req.include (запрос, ответ);}еще{RequestDispatcher req = request.getRequestDispatcher ("register_2.jsp");req.forward (запрос, ответ);}}}
Расшифровка кода:
Строка кода 14: Здесь мы определяем guru_servlet, расширяющий HttpServlet.
Строка кода 18: этот метод действия doPost (), который будет вызываться, когда мы упоминаем POST в атрибуте действия в приведенной выше форме JSP.
Строка кода 20-25: Здесь мы получаем значения из запроса, т.е.first_name, last_name, имя пользователя, пароль, адрес и контакт, используя request.getParameter.
Строка кода 27-32: Здесь мы берем условие if, в котором мы проверяем любой из параметров, полученных из запроса, на предмет того, пусты они или нет. Если какой-либо из параметров пуст, он войдет в это условие (first_name.isEmpty () || last_name.isEmpty || username.isEmpty || password.isEmpty || address.isEmpty || contact.isEmpty ()), и мы имеем для получения объекта RequestDispatcher с помощью объекта запроса, который перенаправит запрос на register_1.jsp. Здесь мы также включаем объекты запроса и ответа.
Строка кода 33-37: этот случай будет выполняться, когда любой из параметров не пуст. Нам нужно будет получить объект requestDispatcher, используя объект запроса, который будет перенаправлять запрос в register_2.jsp. Здесь мы перенаправляем объекты запроса и ответа.
Register_2.jsp
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Страница успеха гуру Добро пожаловать, пользователь !!!!
Расшифровка кода:
Строка кода 10: Здесь мы говорим «Добро пожаловать, пользователь». Этот JSP будет вызываться, когда будут заполнены все параметры.
Когда вы выполните приведенный выше код, вы получите следующий результат:
Выход:
Когда мы нажимаем на register_1.jsp, мы получаем форму, которая будет содержать такие данные, как имя, фамилия, имя пользователя, пароль, адрес, контакт. Все детали заполнены. Когда мы нажимаем кнопку отправки, мы получаем сообщение «Добро пожаловать, пользователь».
Форма входа и выхода
Как и в форме регистрации, у нас будет форма входа и выхода.
В этом примере мы взяли форму входа в систему, где у нас есть два поля «имя пользователя» и «пароль» с кнопкой отправки.
Когда мы нажимаем кнопку отправки, мы получаем приветственное сообщение с кнопкой выхода.
Когда мы нажимаем кнопку выхода, мы возвращаемся к форме входа.
Register_3.jsp
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Форма входа для гуру
Расшифровка кода:
Строка кода 10: Здесь мы берем имя формы, у которой есть действие, т.е. сервлет, которому она передана, - это guru_login.java. Метод, через который будет проходить POST.
Строка кода 13-16: Здесь мы берем поле ввода «имя пользователя», которое имеет текстовый тип.
Строка кода 17-20: Здесь мы берем поле ввода «пароль» типа «пароль».
Строка кода 22: Здесь мы берем кнопку «отправить» со значением «Login», на которую мы нажимаем, затем она переходит к сервлету guru_login, где оба поля берутся с использованием объекта запроса.
Guru_login.java (сервлет)
демотест пакета;import java.io.IOException;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/ *** Класс реализации сервлета guru_login* /открытый класс guru_login расширяет HttpServlet {public guru_login () {супер();// TODO Заглушка автоматически сгенерированного конструктора}protected void doPost (запрос HttpServletRequest, ответ HttpServletResponse) выбрасывает ServletException, IOException {// TODO Заглушка автоматически сгенерированного методаСтрока username = request.getParameter ("имя пользователя");Строка password = request.getParameter («пароль»);if (username.isEmpty () || password.isEmpty ()){RequestDispatcher req = request.getRequestDispatcher ("register_3.jsp");req.include (запрос, ответ);}еще{RequestDispatcher req = request.getRequestDispatcher ("register_4.jsp");req.forward (запрос, ответ);}}}
Расшифровка кода:
Строка кода 5-9: Здесь мы импортируем необходимый импорт в код.
Строка кода 14: Здесь мы берем сервлет guru_login, который расширяет HttpServlet.
Строка кода 21: Здесь мы используем метод doPost (), как и в форме, которую мы используем метод POST.
Строка кода 23-24: Здесь мы берем параметры, используя объект запроса, то есть имя пользователя и пароль.
Строка кода 25-29: Таким образом, мы берем условие «если», где мы проверяем имя пользователя и пароль, являются ли они пустыми или нет. В этом случае, если он пуст, мы получаем объект диспетчера запросов, который пересылает на register_3.jsp с объектами запроса и ответа.
Строка кода 30-34: это будет выполнено, если оба не пусты, тогда запрос будет перенаправлен в register_4.jsp с объектами запроса и ответа.
Register_4.jsp
<% @ page language = "java" contentType = "text / html; charset = ISO-8859-1"pageEncoding = "ISO-8859-1"%>Гуру вошел в систему
<% String username = request.getParameter ("имя пользователя"); %> Добро пожаловать <% out.println (имя пользователя); %> Пользователь !!!! Вы вошли в систему. | ||
Выйти < / td> |
Расшифровка кода:
Строка кода 12: Здесь мы получаем параметр «имя пользователя» из объекта запроса в строковом объекте username.
Строка кода 13: Здесь у нас есть приветственное сообщение с именем пользователя.
Строка кода 14: Здесь мы делаем ссылку для выхода из формы, которая перенаправляет на register_3.jsp.
Когда вы выполните приведенный выше код, вы получите следующий результат:
Выход:
Здесь, когда мы нажимаем на register_3.jsp, мы получаем два поля «имя пользователя» и «пароль» с кнопкой входа.
После нажатия на кнопку «Войти» вы получите следующее сообщение с кнопкой «Выйти».
Когда вы нажимаете кнопку выхода, вы возвращаетесь на страницу входа в систему.