Spring MVC入门示例教程--表单处理
以下示例演示如何编写一个简单的基于Web的应用程序,它使用Spring Web MVC框架使用HTML表单。 首先使用Eclipse IDE,并按照以下步骤使用Spring Web Framework开发基于动态表单的Web应用程序:
- 基于上一小节中的Spring MVC - Hello World实例章节所创建的 HelloWeb来创建一个新的工程为:
FormHandling
,并创建一个包名称为com.yiibai.springmvc
。
- 在
com.yiibai.springmvc
包下创建两个Java类Student
,StudentController
。- 在
jsp
子文件夹下创建两个视图文件student.jsp
,result.jsp
。- 最后一步是创建所有源和配置文件的内容并运行应用程序,如下所述。
完整的项目文件结构如下所示 -
Student.java文件中的代码内容 -
package com.yiibai.springmvc;public class Student {private Integer age;private String name;private Integer id;public void setAge(Integer age) {this.age = age;}public Integer getAge() {return age;}public void setName(String name) {this.name = name;}public String getName() {return name;}public void setId(Integer id) {this.id = id;}public Integer getId() {return id;} }
Java
StudentController.java 文件中的代码内容 -
package com.yiibai.springmvc;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 StudentController {@RequestMapping(value = "/student", method = RequestMethod.GET)public ModelAndView student() {return new ModelAndView("student", "command", new Student());}@RequestMapping(value = "/addStudent", method = RequestMethod.POST)public String addStudent(@ModelAttribute("SpringWeb")Student student, ModelMap model) {model.addAttribute("name", student.getName());model.addAttribute("age", student.getAge());model.addAttribute("id", student.getId());return "result";} }
Java
这里的第一个服务方法
student()
,我们已经在ModelAndView
对象中传递了一个名为“command
”的空对象,因为如果在JSP中使用<form:form>
标签,spring框架需要一个名为“command
”的对象文件。 所以当调用student()
方法时,它返回student.jsp
视图。第二个服务方法
addStudent()
将在 URLHelloWeb/addStudent
上的POST方法提交时调用。将根据提交的信息准备模型对象。最后,将从服务方法返回“result
”视图,这将最终渲染result.jsp
视图。student.jsp文件的内容如下所示 -
<%@ page contentType="text/html; charset=UTF-8" %> <%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%> <html> <head><title>Spring MVC表单处理</title> </head> <body><h2>Student Information</h2> <form:form method="POST" action="/FormHandling/addStudent"><table><tr><td><form:label path="name">名字:</form:label></td><td><form:input path="name" /></td></tr><tr><td><form:label path="age">年龄:</form:label></td><td><form:input path="age" /></td></tr><tr><td><form:label path="id">编号:</form:label></td><td><form:input path="id" /></td></tr><tr><td colspan="2"><input type="submit" value="提交表单"/></td></tr> </table> </form:form> </body> </html>
HTML
result.jsp文件的内容如下 -
<%@ page contentType="text/html; charset=UTF-8" %> <%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%> <html> <head><title>Spring MVC表单处理</title> </head> <body><h2>提交的学生信息如下 - </h2><table><tr><td>名称:</td><td>${name}</td></tr><tr><td>年龄:</td><td>${age}</td></tr><tr><td>编号:</td><td>${id}</td></tr> </table> </body> </html>
HTML
完成创建源和配置文件后,导出应用程序。 右键单击应用程序,并使用导出> WAR文件选项,并将
FormHandling.war
文件保存在Tomcat的webapps
文件夹中。或者直接右键选择“Run As -> Run On Server”。启动Tomcat服务器,并确保您能够使用标准浏览器从webapps文件夹访问其他网页。现在尝试URL => http://localhost:8080/FormHandling/student ,如果Spring Web应用程序没有问题,那么应该看到以下结果:
提交所需信息后,点击提交按钮提交表单。 如果Spring Web应用程序没有问题,应该看到以下结果:
原文出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/spring_mvc/springmvc_form_handling.html
Spring MVC入门示例教程--表单处理相关推荐
- Spring MVC入门示例教程--静态页面跳转
以下示例显示如何使用Spring MVC Framework编写一个简单的基于Web的应用程序,它可以使用<mvc:resources>标记访问静态页面和动态页面.首先使用Eclipse ...
- Spring MVC 入门示例讲解
在本例中,我们将使用Spring MVC框架构建一个入门级web应用程序.Spring MVC 是Spring框架最重要的的模块之一.它以强大的Spring IoC容器为基础,并充分利用容器的特性来简 ...
- Spring MVC 详细示例教程
转载自 http://www.cnblogs.com/sunniest/p/4555801.html 一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC ...
- java mvc中重复提交表单,spring mvc 防止重复提交表单的两种方法,推荐第二种
第一种方法:判断session中保存的token 比较麻烦,每次在提交表单时都必须传入上次的token.而且当一个页面使用ajax时,多个表单提交就会有问题. 注解Token代码: package c ...
- Spring MVC 测试 | 模拟提交表单
在 Spring 4 MVC 单元测试例子 一文中利用Spring test 框架进行了简单的测试,代码mockMvc.perform(get("/SayHello/getAnswer&qu ...
- Eclipse开发Spring MVC入门示例
一 新建一个动态web工程,并导入包 如图: 二 Spring控制器类 创建一个Spring MVC的一个控制类,并处理请求,打印一句话'Spring MVC示例 ', 那我们先创建包com.tian ...
- 【Spring MVC学习】spring mvc入门示例
之前进公司就直接使用spring mvc做项目了,并没有系统学习过,后来再回头去总结的时候发现我只是在项目中会使用,但是有关spring mvc的配置,还有注解什么的想起来会感觉很混乱,趁着这几天不忙 ...
- Spring MVC框架在进行表单提交,自动封装成对象提交,在以对象的形式入参
最近做了一个超市订单管理系统的项目,使用的是Spring MVC 和Spring 框架. 如上图:进行新用户添加.此处jsp页面代码如下: <div class="right" ...
- Spring MVC入门示例
1.新建一个Java Web项目 2.导入jar包 3.在WEB-INF下面建一个hello.jsp页面. 1 <%@ page language="java" import ...
最新文章
- Vivado Logic Analyzer中VIO核的使用
- java 集合框架(一)
- boost::mp11::mp_reverse_fold相关用法的测试程序
- JAVA抽象类为什么可以有构造_抽象类为什么可以有构造函数?- Constructor of an abstract class in C#(转载)...
- 字符串第一个出现的单个字符_如何在不编写单个应用程序的情况下找到我的第一个开发人员工作
- Java的 published_Umbraco当没有当前的PublishedContentRequest时,无法呈现宏
- blender使用_用Blender教青少年3D动画
- ubuntu eclipse mysql_ubuntu下eclipse连接mysql
- 超生动图解LSTM和GPU:拯救循环神经网络的记忆障碍就靠它们了!
- GLPI+OCS、SmartIT、LANDesk比较
- Cisco 路由器ntp服务配置
- 桌面图标无故变成白色
- 新版抖音二维码生成工具源码+实测可用
- 计算机高手如何操作键盘,从小白到高手 游戏键盘驱动全面解析
- mysql 库存超卖_高并发下防止库存超卖的解决方案
- 介绍一个开源博客项目并部署到Nginx服务器
- MOOS-ivp 实验一 在linux系统中安装moos-ivp遇到的各种问题汇总
- 新的Novidade漏洞利用工具包目标瞄准家用和SOHO路由器
- 弱网测试之NEWT(Network Emulator Toolkit)
- 计算机efs恢复工具,重装系统后如何恢复对EFS加密文件的访问