The Spring MVC form drop-down list contains the list of elements. This tag generates an HTML select element. It allows data binding to the selected element.
Syntax
Here are some other tags used to select the options.
option tag
This tag generates an HTML option tag. Each tag contains a value that can be selected by the user.
Syntax
options tag
This tag generates a list of HTML option tags. Each tag contains a list of elements selected by the user.
Syntax
Example of Spring MVC Form Drop-Down List
1. Add dependencies to pom.xml file.
- <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-webmvc</artifactId>
- <version>5.1.1.RELEASE</version>
- </dependency>
- <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- <version>3.0-alpha-1</version>
- </dependency>
- <!-- https://mvnrepository.com/artifact/javax.servlet/jstl -->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>jstl</artifactId>
- <version>1.2</version>
- </dependency>
- <!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-jasper -->
- <dependency>
- <groupId>org.apache.tomcat</groupId>
- <artifactId>tomcat-jasper</artifactId>
- <version>9.0.12</version>
- </dependency>
2. Create the bean class
Reservation.java
- package com.javatpoint;
- public class Reservation {
- private String firstName;
- private String lastName;
- private String Gender;
- private String[] Food;
- private String cityFrom;
- private String cityTo;
- public Reservation()
- {
- }
- public String getFirstName() {
- return firstName;
- }
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
- public String getLastName() {
- return lastName;
- }
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
- public String getGender() {
- return Gender;
- }
- public void setGender(String gender) {
- Gender = gender;
- }
- public String[] getFood() {
- return Food;
- }
- public void setFood(String[] food) {
- Food = food;
- }
- public String getCityFrom() {
- return cityFrom;
- }
- public void setCityFrom(String cityFrom) {
- this.cityFrom = cityFrom;
- }
- public String getCityTo() {
- return cityTo;
- }
- public void setCityTo(String cityTo) {
- this.cityTo = cityTo;
- }
- }
3. Create the controller class
ReservationController.java
- package com.javatpoint;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.ModelAttribute;
- import org.springframework.web.bind.annotation.RequestMapping;
- @RequestMapping("/reservation")
- @Controller
- public class ReservationController {
- @RequestMapping("/bookingForm")
- public String bookingForm(Model model)
- {
- //create a reservation object
- Reservation res=new Reservation();
- //provide reservation object to the model
- model.addAttribute("reservation", res);
- return "reservation-page";
- }
- @RequestMapping("/submitForm")
- public String submitForm(@ModelAttribute("reservation") Reservation res)
- {
- return "confirmation-form";
- }
- }
4. Provide the entry of controller in the web.xml file
web.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
- <display-name>SpringMVC</display-name>
- <servlet>
- <servlet-name>spring</servlet-name>
- <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>spring</servlet-name>
- <url-pattern>/</url-pattern>
- </servlet-mapping>
- </web-app>
5. Define the bean in the xml file
spring-servlet.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:mvc="http://www.springframework.org/schema/mvc"
- xsi:schemaLocation="
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context.xsd
- http://www.springframework.org/schema/mvc
- http://www.springframework.org/schema/mvc/spring-mvc.xsd">
- <!-- Provide support for component scanning -->
- <context:component-scan base-package="com.javatpoint" />
- <!--Provide support for conversion, formatting and validation -->
- <mvc:annotation-driven/>
- <!-- Define Spring MVC view resolver -->
- <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
- <property name="prefix" value="/WEB-INF/jsp/"></property>
- <property name="suffix" value=".jsp"></property>
- </bean>
- </beans>
6. Create the requested page
index.jsp
7. Create the view components
reservation-page.jsp
- <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
- <!DOCTYPE html>
- <html>
- <head>
- <title>Reservation Form</title>
- </head>
- <h3>Railway Reservation Form</h3>
- <body>
- <form:form action="submitForm" modelAttribute="reservation">
- First name: <form:input path="firstName" />
- <br><br>
- Last name: <form:input path="lastName" />
- <br><br>
- Gender:
- Male<form:radiobutton path="Gender" value="Male"/>
- Female<form:radiobutton path="Gender" value="Female"/>
- <br><br>
- Meals:
- BreakFast<form:checkbox path="Food" value="BreakFast"/>
- Lunch<form:checkbox path="Food" value="Lunch"/>
- Dinner<form:checkbox path="Food" value="Dinner"/>
- <br><br>
- Leaving from: <form:select path="cityFrom">
- <form:option value="Ghaziabad" label="Ghaziabad"/>
- <form:option value="Modinagar" label="Modinagar"/>
- <form:option value="Meerut" label="Meerut"/>
- <form:option value="Amristar" label="Amristar"/>
- </form:select>
- <br><br>
- Going to: <form:select path="cityTo">
- <form:option value="Ghaziabad" label="Ghaziabad"/>
- <form:option value="Modinagar" label="Modinagar"/>
- <form:option value="Meerut" label="Meerut"/>
- <form:option value="Amristar" label="Amristar"/>
- </form:select>
- <br><br>
- <input type="submit" value="Submit" />
- </form:form>
- </body>
- </html>
confirmation-page.jsp
- <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
- <!DOCTYPE html>
- <html>
- <body>
- <p>Your reservation is confirmed successfully. Please, re-check the details.</p>
- First Name : ${reservation.firstName} <br>
- Last Name : ${reservation.lastName} <br>
- Gender: ${reservation.gender}<br>
- Meals:
- <ul>
- <c:forEach var="meal" items="${reservation.food}">
- <li>${meal}</li>
- </c:forEach>
- </ul>
- Leaving From : ${reservation.cityFrom} <br>
- Going To : ${reservation.cityTo}
- </body>
- </html>
Output:
No comments:
Post a Comment