English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Spring MVCのフォームチェックボックスは、複数のオプションを選択するのに役立ちます。このタグは、チェックボックスのHTML入力タグの形式を呈示します。
<form:checkbox path="abc" value="element"/>
チェックボックスタグ以外に、Spring MVCフォームタグライブラリには チェックボックスタグ。このタグは、タイプ付きチェックボックスを持つ複数のHTML入力タグを表示します。すべての要素をビューページにリストアップしたい場合以外に使用します。この場合、実行時に要素を提供し、タグに渡すことができます。ユーザーが複数のオプションを選択できるため、Array、List、またはMapのタイプの要素を渡す必要があります。
<form:checkboxes path="abc" items="${object.elementList}"/>
<!-- https://mvnrepository.com/アーティファクト/org.springframework/spring-webmvc --> <依存関係> <グループID>org.springframework</<グループID> <アーティファクトID>spring-webmvc</<アーティファクトID> <バージョン>5.1.1.RELEASE</バージョン> </依存関係> <!-- https://mvnrepository.com/アーティファクト/javax.servlet/javax.servlet-api --> <依存関係> <グループID>javax.servlet</<グループID> <アーティファクトID>servlet-api</<アーティファクトID> <バージョン>3.0-alpha-1</バージョン> </依存関係> <!-- https://mvnrepository.com/アーティファクト/javax.servlet/jstl --> <依存関係> <グループID>javax.servlet</<グループID> <アーティファクトID>jstl</<アーティファクトID> <バージョン>1.2</バージョン> </依存関係> <!-- https://mvnrepository.com/アーティファクト/org.apache.tomcat/tomcat-jasper --> <依存関係> <グループID>org.apache.tomcat</<グループID> <アーティファクトID>tomcat-jasper</<アーティファクトID> <バージョン>9.0.12</バージョン> </依存関係>
Reservation.java
package com.w3codebox; public class Reservation { private String firstName; private String lastName; private String Gender; private String[] Food; 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; } }
ReservationController.java
package com.w3codebox; 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"; } }
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>
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"> <!-- コンポーネントスキャニングに対するサポートを提供します --> <context:component-scan base-package="com.w3codebox" /> <!--変換、フォーマット、バリデーションに対するサポートを提供します --> <mvc:annotation>-driven/> <!-- Spring MVCビューレゾルバの定義 --> <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>
index.jsp
<!DOCTYPE html> <html> <head> <title>鉄道登録フォーム</title> </head> <body> <a href="reservation/bookingForm>予約にはここをクリックしてください</a> </body> </html>
reservation-page.jsp
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <!DOCTYPE html> <html> <head> <title>予約フォーム</title> </head> <h3>鉄道予約フォーム</h3> <body> <form:form action="submitForm" modelAttribute="reservation"> 名: <form:input path="firstName"} /> <br><br> 姓: <form:input path="lastName"} /> <br><br> 性別: 男性<form:radiobutton path="Gender" value="Male"}/> 女性<form:radiobutton path="Gender" value="Female"}/> <br><br> Meals: 朝食<form:checkbox path="Food" value="BreakFast"}/> ランチ<form:checkbox path="Food" value="Lunch"}/> ディナー<form:checkbox path="Food" value="Dinner"}/> <br><br> <input type="submit" value="提出" /> </form:form> </body> </html>
confirmation-page.jsp
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE html> <html> <body> <p>予約が正常に確認されました。どうぞ、-詳細を確認してください.</p> 名 : ${reservation.firstName} <br> 姓 : ${reservation.lastName} <br> 性別: ${reservation.gender}<br> Meals: <ul> <c:forEach var="meal" items="${reservation.food}"> <li>${meal}</li> </c:forEach> </ul> </body> </html>
出力: