以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_radiobutton.htm

说明:示例基于Spring MVC 4.1.6。

以下示例说明如何在使用Spring Web MVC框架的表单中使用RadioButton。首先,让我们使用Eclipse IDE,并按照以下步骤使用Spring Web Framework开发基于动态窗体的Web应用程序:

步骤 描述
1 创建一个名为HelloWeb的项目,在一个包com.tutorialspoint下,如Spring MVC - Hello World Example章节所述。
2 在com.tutorialspoint包下创建一个Java类User,UserController。
3 在jsp子文件夹下创建一个视图文件user.jsp,users.jsp。
4 最后一步是创建所有源和配置文件的内容并导出应用程序,如下所述。

User.java

package com.tutorialspoint;public class User {private String username;private String password;private String address;private boolean receivePaper;private String [] favoriteFrameworks;   private String gender;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}public boolean isReceivePaper() {return receivePaper;}public void setReceivePaper(boolean receivePaper) {this.receivePaper = receivePaper;}public String[] getFavoriteFrameworks() {return favoriteFrameworks;}public void setFavoriteFrameworks(String[] favoriteFrameworks) {this.favoriteFrameworks = favoriteFrameworks;}public String getGender() {return gender;}public void setGender(String gender) {this.gender = gender;}
}

UserController.java

package com.tutorialspoint;import java.util.ArrayList;
import java.util.List;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.ui.ModelMap;@Controller
public class UserController {@RequestMapping(value = "/user", method = RequestMethod.GET)public ModelAndView user() {User user = new User();      user.setFavoriteFrameworks((new String []{"Spring MVC","Struts 2"}));user.setGender("M");ModelAndView modelAndView = new ModelAndView("user", "command", user);return modelAndView;}@RequestMapping(value = "/addUser", method = RequestMethod.POST)public String addUser(@ModelAttribute("SpringWeb")User user, ModelMap model) {model.addAttribute("username", user.getUsername());model.addAttribute("password", user.getPassword());model.addAttribute("address", user.getAddress());model.addAttribute("receivePaper", user.isReceivePaper());model.addAttribute("favoriteFrameworks", user.getFavoriteFrameworks());model.addAttribute("gender", user.getGender());return "users";}@ModelAttribute("webFrameworkList")public List<String> getWebFrameworkList(){List<String> webFrameworkList = new ArrayList<String>();webFrameworkList.add("Spring MVC");webFrameworkList.add("Struts 1");webFrameworkList.add("Struts 2");webFrameworkList.add("Apache Wicket");return webFrameworkList;}
}

这里第一个服务方法user(),我们已经通过名为“command”的ModelAndView对象中传递了一个空的User对象,因为如果您在JSP中使用<form:form>标签,Spring框架将期望一个名为“command”的对象文件。所以当user()方法被调用时,它返回user.jsp视图。

将在HelloWeb/addUser URL上针对POST方法调用第二个服务方法addUser()。您将根据提交的信息准备您的模型对象。最后,将从服务方法返回“user”视图,这将导致渲染users.jsp

user.jsp

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<html>
<head><title>Spring MVC Form Handling</title>
</head>
<body><h2>User Information</h2>
<form:form method="POST" action="/HelloWeb/addUser"><table><tr><td><form:label path="username">User Name</form:label></td><td><form:input path="username" /></td></tr><tr><td><form:label path="password">Age</form:label></td><td><form:password path="password" /></td></tr>  <tr><td><form:label path="address">Address</form:label></td><td><form:textarea path="address" rows="5" cols="30" /></td></tr>  <tr><td><form:label path="receivePaper">Subscribe Newsletter</form:label></td><td><form:checkbox path="receivePaper" /></td></tr> <tr><td><form:label path="favoriteFrameworks">Favorite Web Frameworks</form:label></td><td><form:checkboxes items="${webFrameworkList}" path="favoriteFrameworks" /></td>       </tr><tr><td><form:label path="gender">Gender</form:label></td><td><form:radiobutton path="gender" value="M" label="Male" /><form:radiobutton path="gender" value="F" label="Female" /></td></tr>       <tr><td colspan="2"><input type="submit" value="Submit"/></td></tr></table>
</form:form>
</body>
</html>

这里我们使用<form:radiobutton />标签来渲染HTML单选按钮。例如

<form:radiobutton path="gender" value="M" label="Male" />
<form:radiobutton path="gender" value="F" label="Female" />

它将呈现以下HTML内容。

<input id="gender1" name="gender" type="radio" value="M" checked="checked"/><label for="gender1">Male</label>
<input id="gender2" name="gender" type="radio" value="F"/><label for="gender2">Female</label>

users.jsp

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<html>
<head><title>Spring MVC Form Handling</title>
</head>
<body><h2>Submitted User Information</h2><table><tr><td>Username</td><td>${username}</td></tr><tr><td>Password</td><td>${password}</td></tr>    <tr><td>Address</td><td>${address}</td></tr>  <tr><td>Subscribed to Newsletter</td><td>${receivePaper}</td></tr>    <tr><td>Favorite Web Frameworks</td><td> <% String[] favoriteFrameworks = (String[])request.getAttribute("favoriteFrameworks");for(String framework: favoriteFrameworks) {out.println(framework);}%></td></tr>          <tr><td>Gender</td><td>${(gender=="M"? "Male" : "Female")}</td></tr>          </table>
</body>
</html>

完成创建源和配置文件后,导出应用程序。右键单击应用程序并使用Export->WAR File选项,并将您的HelloWeb.war文件保存在Tomcat的webapps文件夹中。

现在启动您的Tomcat服务器,并确保您可以使用标准浏览器从webapps文件夹访问其他网页。现在尝试URL http://localhost:8080/HelloWeb/user,如果您的Spring Web应用程序的一切都很好,您应该会看到以下结果:

提交所需信息后,点击提交按钮提交表单。如果您的Spring Web应用程序的一切都很好,您应该会看到以下结果:

Maven示例:

https://github.com/easonjim/5_java_example/tree/master/springmvc/tutorialspoint/test9

==>如有问题,请联系我:easonjim#163.com,或者下方发表评论。<==

Spring MVC-表单(Form)标签-单选按钮(RadioButton)示例(转载实践)相关推荐

  1. SSM框架笔记14:Spring MVC表单验证

    Spring MVC表单验证   在Spring MVC中,表单验证有三种方法.   一.基本校验 这种方法是基于handler的,优点是定义方便,缺点是不便于复用. 1.两个接口:Errors/Bi ...

  2. Spring MVC表单防重复提交

    转载自 Spring MVC表单防重复提交 利用Spring MVC的过滤器及token传递验证来实现表单防重复提交. 创建注解 @Target(ElementType.METHOD) @Retent ...

  3. Spring MVC表单验证(带批注)

    这篇文章提供了一个简单HTML表单验证示例. 它基于带有注释的Spring MVC示例. 该代码可在GitHub的Spring-MVC-Form-Validation目录中找到. 数据 在此示例中,我 ...

  4. Spring MVC表单教程

    本教程将展示如何在Spring MVC中处理表单提交. 我们将定义一个控制器来处理页面加载和表单提交. 您可以在GitHub上获取代码. 先决条件: 您应该有一个运行中的Spring MVC应用程序. ...

  5. Spring MVC表单实例

    以下内容引用自http://wiki.jikexueyuan.com/project/spring/mvc-framework/spring-mvc-form-handling-example.htm ...

  6. Spring MVC表单验证

    看登录控制器代码: @RequestMapping(method=RequestMethod.POST,path="/login")public void login(@Valid ...

  7. 一文学会 Spring MVC 表单标签

    ✅作者简介:2022年博客新星 第八.热爱国学的Java后端开发者,修心和技术同步精进.

  8. HTML超文本标记语言(八)——表单form

    一.表单<form>标签及其属性 HTML表单用于收集用户输入.基本格式如下: <form>. form elements. </form> 表单元素指不同类型的i ...

  9. antd-vue中的form表单label标签for导致点击文字触发输入框解决方案

    antd-vue中的form表单label标签for导致点击文字触发输入框解决方案 参考文章: (1)antd-vue中的form表单label标签for导致点击文字触发输入框解决方案 (2)http ...

  10. HTML中的form表单的标签、属性、属性值; CSS以及HTML5新增属性、属性值

    form表单HTML5.CSS3标签及属性.属性值 form表单HTML标签.属性.属性值: (单行文本输入框) (密码输入框) (单选框) (多选框) (提交按钮) (重置按钮) 或者按钮(空按钮) ...

最新文章

  1. 点一下按钮调两次接口?浅谈接口设计的幂等性
  2. win10应用商店打不开_电脑打不开exe程序|Win10提示exe不是有效32应用程序
  3. 跪求AI编程语言--纯中文代码
  4. 启明云端分享|PX30核心板 怎么烧录
  5. ITK:创建另一个图像实例
  6. 在阿里,我们如何管理代码分支?
  7. 基于OpenCV的图像阴影去除,你会吗?
  8. 同盟与对抗:谈《少女杜拉的故事》中的治疗关系(转)
  9. 通过MOXy实现使JAXB更加清洁
  10. linux培训笔记1
  11. Apache RocketMQ 分享
  12. node卸载_08187.1.1如何卸载CDP
  13. 众元教育H3CSE20200603班-云计算基础知识讲解
  14. python获取验证码_python如何获取验证码
  15. 郑立:一个80后互联网创业神话的倒掉
  16. 阿里云图片服务器OSS对象存储器使用方法(附详细步骤)
  17. MATLAB模拟陀螺仪的运动轨迹(附完整代码)
  18. 使用pytorch模型学习框架easyocr模块识别行程码图片文字并使用Flask Web返回指定信息json字符串
  19. 【第23期】令人舒心又伤脑的12张数学原理动图!你能看懂几个
  20. Android经典著名的百大框架源码解析(retrofit、Okhttp、Glide、Zxing、dagger等等)

热门文章

  1. 异常处理汇总-数据库系列
  2. 盘阵多路径学习(转)
  3. 一位Erlang程序猿的自白
  4. 一个未知高度垂直居中的简单方法
  5. VS2017环境下动态链接库编写及调用
  6. python动态创建字典_如何在Python中创建动态命名字典?
  7. windows 杀 端口
  8. vue全选和取消全选(无bug)
  9. sql server 2008安装的时候选NT AUTHORITY\NEWORK SERVICE 还是选 NT AUTHORITY\SYSTEM ?
  10. 643. 子数组最大平均数 I