Spring MVC — захват и отображение данных из регистрационной формы
Эта статья является продолжением этой статьи Spring MVC — создание регистрационной формы с использованием библиотеки тегов форм, где мы успешно создали регистрационную форму с использованием библиотеки тегов форм. Здесь, в этой статье, мы собираемся объяснить, как мы можем собирать данные, которые вводит пользователь, и отображать их на нашей следующей странице после нажатия кнопки «Регистрация». Образец изображения приведен ниже, чтобы получить представление о том, что мы собираемся делать в этой статье.
Реализация
Добавьте код в файл Registration-page.jsp.
Перейдите к файлу Registration-page.jsp и добавьте приведенную ниже строку кода в тег form:form .
<form:form action="registration-complete" method="get" modelAttribute="userRegInfo">
Все остальные вещи остаются без изменений.
Файл: Обновлена Registration-page.jsp
HTML
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%><html><body> <h1 align="center">Create Registration Form using Form Tag in Spring MVC</h1> <!-- Changes in this line --> <form:form action="registration-complete" method="get" modelAttribute="userRegInfo"> <div align="center"> <!-- A Simple Input Field --> <label>Name : </label> <form:input path="name"/> <br/> <label>User Name : </label> <form:input path="userName"/> <br/> <label>Password : </label> <form:password path="password"/> <br/> <!-- DropDown Field --> <label>Branch : </label> <form:select path="branch"> <form:option value="CSE" label="Computer Science"></form:option> <form:option value="CSA" label="Computer Science and Application"></form:option> <form:option value="EE" label="Electrical Engineering"></form:option> <form:option value="ME" label="Mechanical Engineering"></form:option> </form:select> <br/> <!-- CheckBox Field --> <label>Skills : </label> Java : <form:checkbox path="skills" value="java"/> Python : <form:checkbox path="skills" value="python"/> C++ : <form:checkbox path="skills" value="cpp"/> DSA : <form:checkbox path="skills" value="dsa"/> Spring : <form:checkbox path="skills" value="spring"/> <br/> <!-- RadioButton Field --> <label>Gender : </label> Male<form:radiobutton path="gender" value="male"/> Female<form:radiobutton path="gender" value="female"/> <br/> <!-- Button Field --> <input type="submit" value="Register"> </div> </form:form></body></html> |
Добавить код в файл RegistrationController.java
Теперь снова вернитесь к файлу RegistrationController.java и создайте еще один метод, подобный этому, с конечной точкой «Registration -complete », потому что мы упомянули то же самое внутри тега form:form в качестве действия.
@RequestMapping("/registration-complete")
public String processUserReg(@ModelAttribute("userRegInfo") UserRegistrationDTO userRegistrationDTO) {
return "registration-complete";
}Файл: Обновленный RegistrationController.java
Java
package com.geeksforgeeks.calculator.controllers;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.ModelAttribute;import org.springframework.web.bind.annotation.RequestMapping;import com.geeksforgeeks.calculator.dto.UserRegistrationDTO;@Controllerpublic class RegistrationController { @RequestMapping("/register") public String showRegistrationPage(@ModelAttribute("userRegInfo") UserRegistrationDTO userRegistrationDTO) { return "registration-page"; } @RequestMapping("/registration-complete") public String processUserReg(@ModelAttribute("userRegInfo") UserRegistrationDTO userRegistrationDTO) { return "registration-complete"; }} |
Создать новый вид
На следующем шаге мы должны создать новое представление с именем « register-complete » внутри папки WEB-INF > view. Ниже приведен код файла Registration -complete.jsp .
HTML
<html><head></head><body> <h1 align="center">Registration Successful</h1> <h2>The details entered by the user are :</h2> Name: ${userRegInfo.name} <br/> User Name: ${userRegInfo.userName} <br/> Password: ${userRegInfo.password} <br/> Branch: ${userRegInfo.branch} <br/> Skills: ${userRegInfo.skills} <br/> Gender: ${userRegInfo.gender} <br/></body></html> |
Итак, мы закончили с кодированием. Теперь давайте снова запустим наше приложение и проверим, все ли работает нормально.
Выход
Нажмите следующий URL, чтобы запустить контроллер
http://localhost:8080/simple-calculator/geeksforgeeks.org/register
Выход:
Давайте заполним форму,
Затем нажмите кнопку «Зарегистрироваться», и вы увидите, что все данные, введенные пользователем, были успешно отображены.