Spring MVC框架:第八章:表单form:form标签

简介: Spring MVC框架:第八章:表单form:form标签

第六章 表单标签

SpringMVC也提供了一组类似JSTL的标签,供我们在页面上简化开发。下面是个例子:

<form:form action="${pageContext.request.contextPath }/emp" method="post" modelAttribute="employee">
    <input type="hidden" name="_method" value="put"/>
    <form:hidden path="empId"/>
    <table align="center">   
        <tr>
            <td colspan="2" align="center">编辑员工</td>
        </tr>
        <tr>
            <td>姓名</td>
            <td>
                <form:input path="empName"/>
            </td>
        </tr>
        <tr>
            <td>社会保险号</td>
            <td>${requestScope.employee.ssn }</td>
        </tr>
        <tr>
            <td>所在部门</td>
            <td>
                <form:select path="department.deptId" items="${requestScope.deptList }" itemValue="deptId" itemLabel="deptName"/>
            </td>
        </tr>
        <tr>
            <td colspan="2" align="center">
                <input type="submit" value="更新"/>
            </td>
        </tr>
    </table>
</form:form>

1.导入标签库

<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>

2.form:form标签

①action属性

和HTML标签中的form标签的action属性作用一致,用来设置表单提交的URL地址。如果form:form标签省略action属性,那么会使用当前表单所在页面的URL地址作为action属性的值。

②modelAttribute属性

该标签无论是执行保存还是更新操作,都要从请求域中读取模型数据。如果没有设置modelAttribute属性那么就以command为属性名从请求域中读取。如果找不到则会抛出异常。 所以要想form:form标签正常工作一定要将一个模型对象保存到请求域中,哪怕是保存数据时也要创建一个空对象保存。

3.表单标签的共同属性

①path

表单字段,对应HTML元素的name属性,支持级联属性。

②htmlEscape

是否对表单值的HTML特殊字符进行转换,默认值为true。

③cssClass

表单组件对应的CSS样式类名。

④cssErrorClass

表单组件的数据存在错误时,采取的CSS样式。

4.form:radiobuttons

单选框组标签,用于构造多个单选框

①items

可以是一个List、String[]或Map

②itemValue

通过指定bean的一个属性名生成radio的value值。可以是集合中bean的一个属性值

③itemLabel

通过指定bean的一个属性名生成radio的label值

④delimiter

多个单选框可以通过delimiter指定分隔符

5.form:errors

显示表单组件或数据校验所对应的错误 <form:errors path=””/>:显示表单所有的错误 <form:errors path=”user”/>:显示所有以user为前缀的属性对应的错误 <form:errors path=”userName”/>:显示特定表单对象属性的错误

相关文章
|
8天前
|
设计模式 前端开发 Java
步步深入SpringMvc DispatcherServlet源码掌握springmvc全流程原理
通过对 `DispatcherServlet`源码的深入剖析,我们了解了SpringMVC请求处理的全流程。`DispatcherServlet`作为前端控制器,负责请求的接收和分发,处理器映射和适配负责将请求分派到具体的处理器方法,视图解析器负责生成和渲染视图。理解这些核心组件及其交互原理,有助于开发者更好地使用和扩展SpringMVC框架。
23 4
|
24天前
|
安全 Java 数据安全/隐私保护
如何使用Spring Boot进行表单登录身份验证:从基础到实践
如何使用Spring Boot进行表单登录身份验证:从基础到实践
40 5
|
26天前
|
前端开发 Java 开发者
Spring MVC中的请求映射:@RequestMapping注解深度解析
在Spring MVC框架中,`@RequestMapping`注解是实现请求映射的关键,它将HTTP请求映射到相应的处理器方法上。本文将深入探讨`@RequestMapping`注解的工作原理、使用方法以及最佳实践,为开发者提供一份详尽的技术干货。
80 2
|
2月前
|
JSON 前端开发 Java
SSM:SpringMVC
本文介绍了SpringMVC的依赖配置、请求参数处理、注解开发、JSON处理、拦截器、文件上传下载以及相关注意事项。首先,需要在`pom.xml`中添加必要的依赖,包括Servlet、JSTL、Spring Web MVC等。接着,在`web.xml`中配置DispatcherServlet,并设置Spring MVC的相关配置,如组件扫描、默认Servlet处理器等。然后,通过`@RequestMapping`等注解处理请求参数,使用`@ResponseBody`返回JSON数据。此外,还介绍了如何创建和配置拦截器、文件上传下载的功能,并强调了JSP文件的放置位置,避免404错误。
|
2月前
|
前端开发 Java 应用服务中间件
【Spring】Spring MVC的项目准备和连接建立
【Spring】Spring MVC的项目准备和连接建立
65 2
|
3月前
|
缓存 前端开发 Java
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
Soring Boot的起步依赖、启动流程、自动装配、常用的注解、Spring MVC的执行流程、对MVC的理解、RestFull风格、为什么service层要写接口、MyBatis的缓存机制、$和#有什么区别、resultType和resultMap区别、cookie和session的区别是什么?session的工作原理
|
2月前
|
XML 前端开发 Java
Spring,SpringBoot和SpringMVC的关系以及区别 —— 超准确,可当面试题!!!也可供零基础学习
本文阐述了Spring、Spring Boot和Spring MVC的关系与区别,指出Spring是一个轻量级、一站式、模块化的应用程序开发框架,Spring MVC是Spring的一个子框架,专注于Web应用和网络接口开发,而Spring Boot则是对Spring的封装,用于简化Spring应用的开发。
189 0
Spring,SpringBoot和SpringMVC的关系以及区别 —— 超准确,可当面试题!!!也可供零基础学习
|
3月前
|
XML 缓存 前端开发
springMVC02,restful风格,请求转发和重定向
文章介绍了RESTful风格的基本概念和特点,并展示了如何使用SpringMVC实现RESTful风格的请求处理。同时,文章还讨论了SpringMVC中的请求转发和重定向的实现方式,并通过具体代码示例进行了说明。
springMVC02,restful风格,请求转发和重定向
|
4月前
|
Java 数据库连接 Spring
后端框架入门超详细 三部曲 Spring 、SpringMVC、Mybatis、SSM框架整合案例 【爆肝整理五万字】
文章是关于Spring、SpringMVC、Mybatis三个后端框架的超详细入门教程,包括基础知识讲解、代码案例及SSM框架整合的实战应用,旨在帮助读者全面理解并掌握这些框架的使用。
后端框架入门超详细 三部曲 Spring 、SpringMVC、Mybatis、SSM框架整合案例 【爆肝整理五万字】
|
4月前
|
XML JSON 数据库
SpringMVC入门到实战------七、RESTful的详细介绍和使用 具体代码案例分析(一)
这篇文章详细介绍了RESTful的概念、实现方式,以及如何在SpringMVC中使用HiddenHttpMethodFilter来处理PUT和DELETE请求,并通过具体代码案例分析了RESTful的使用。
SpringMVC入门到实战------七、RESTful的详细介绍和使用 具体代码案例分析(一)