这篇文章的讲解都是基于注解的方式,关于spring mvc注解的介绍可以看我的上一篇文章:Spring mvc系列四之 注解介绍以及spring mvc的其它运用可以看我spring mvc系列的文章.
在讲spring mvc的时候讲解@RequestParam和@PathVariable用过spring mvc的数据填充.当我们从表单中传来数据时,可在相应的控制器的处理方法参数上写上相同名字参数以及相应的类型即可,当表单中的参数名称和方法参数名称不一样时可用@RequestParam或@PathVariable进行注解.
下面看一个例子:
首先创建一个表单提交页面data.jsp
-
<%@pagelanguage="java"contentType="text/html;charset=UTF-8"
-
pageEncoding="UTF-8"%>
-
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
-
<html>
-
<head>
-
<metahttp-equiv="Content-Type"content="text/html;charset=UTF-8">
-
<title>添加用户</title>
-
</head>
-
<body>
-
<formaction="user/addUser"method="post">
-
用户名:<inputtype="text"name="name"/><br/>
-
年龄:<inputtype="text"name="age"/>
-
<inputtype="submit"value="提交"/>
-
</form>
-
</body>
-
</html>
创建相应的控制器,这里表单提交到了user/addUser.写它对应的方法.
-
packagegd.hz.springmvc.controller;
-
-
importorg.springframework.stereotype.Controller;
-
importorg.springframework.web.bind.annotation.RequestMapping;
-
importorg.springframework.web.bind.annotation.RequestMethod;
-
importorg.springframework.web.servlet.ModelAndView;
-
-
@Controller("userController")
-
@RequestMapping("user")
-
publicclassUserController{
-
-
@RequestMapping(value="addUser",method=RequestMethod.POST)
-
publicModelAndViewaddUser(Stringname,Stringage)
-
{
-
System.out.println("name--->"+name+"年龄--->"+age);
-
returnnewModelAndView("dataSuccess");
-
}
-
}
我们把表单中的名为name和age与控制器中addUser方法中参数的name和age相对应.这样就spring就自动帮我们填充了数据.注意当参数名与表单中的名字不一样时可@RequestParam进行注解
当然也可以用对象的形式填充数据.
创建一个User类,生成相应的get set方法,属性名称与表单中的名称对应.
-
packagegd.hz.springmvc.model;
-
-
publicclassUser{
-
privateStringname;
-
privateintage;
-
-
publicStringgetName(){
-
returnname;
-
}
-
publicvoidsetName(Stringname){
-
this.name=name;
-
}
-
-
publicintgetAge(){
-
returnage;
-
}
-
publicvoidsetAge(intage){
-
this.age=age;
-
}
-
}
在Controller中这样写:
-
packagegd.hz.springmvc.controller;
-
-
importgd.hz.springmvc.model.User;
-
-
importorg.springframework.stereotype.Controller;
-
importorg.springframework.web.bind.annotation.RequestMapping;
-
importorg.springframework.web.bind.annotation.RequestMethod;
-
importorg.springframework.web.servlet.ModelAndView;
-
-
@Controller("userController")
-
@RequestMapping("user")
-
publicclassUserController{
-
-
-
@RequestMapping(value="addUser2",method=RequestMethod.POST)
-
publicModelAndViewaddUser2(Useruser)
-
{
-
System.out.println("name--->"+user.getName()+"年龄--->"+user.getAge());
-
returnnewModelAndView("dataSuccess");
-
}
-
}
将得到的数据返回到view当中:
最常用的是使用ModelAndView,它有很多重载的构造方法,可以返回字符串类型,也可以返回Map类型和Object类型,详细用法可以查看Spring 的API,下面举些例子.
-
@RequestMapping(value="addUser2",method=RequestMethod.POST)
-
publicModelAndViewaddUser2(Useruser)
-
{
-
System.out.println("name--->"+user.getName()+"年龄--->"+user.getAge());
-
returnnewModelAndView("dataSuccess","user",user);
-
}
-
@RequestMapping(value="addUser2",method=RequestMethod.POST)
-
publicModelAndViewaddUser2(Useruser)
-
{
-
System.out.println("name--->"+user.getName()+"年龄--->"+user.getAge());
-
ModelAndViewmodel=newModelAndView("dataSuccess");
-
model.addObject("user",user);
-
returnmodel;
-
}
-
@RequestMapping(value="addUser2",method=RequestMethod.POST)
-
publicModelAndViewaddUser2(Useruser)
-
{
-
ModelAndViewmodel=newModelAndView("dataSuccess");
-
Map<String,User>users=newHashMap<String,User>();
-
model.addObject(users);
-
returnmodel;
-
}
在视图界面我们可以用jstl获取数据.
例如前面第一种方法的user(注意这里的user是我们返回时定义的名称),${user.name}
分享到:
相关推荐
这种将请求消息数据与后台方法参数建立连接的过程就是Spring MVC中的数据绑定。 13.1 数据绑定介绍 在数据绑定过程中,Spring MVC框架会通过数据绑定组件(DataBinder)将请求参数串的内容进行类型转换,然后将转换...
基于 Spring Boot,Spring MVC,Spring Data 的企业Web应用快速开发框架。 为什么要有 SwiftBoot 虽然用 SpringBoot 搭建框架进行开发已经简化了很多配置的工作,但是对于大多数中小型的项目来说来,还是有一些重复...
Web 应用的功能通常不局限于给用户推送内容,大多数应用允许用户填充表单并将数据提交回应用中,通过这种方式与用户进行交互。使用表单分为展现表及和处理用户通过表单提交的数据。
还使用了 Spring 数据和 spring mvc。 Velocity 被选择并配置为模板引擎。 为了运行程序 cassandra.properties 和 mysql.properties 文件应该根据用户的偏好设置进行配置。 至少 mysql 和 cassandra 应该在本地机器...
添加列表的排序选项改善应用程式检视样式添加与其他数据库一起本地运行的手册在Heroku上发布第一个版本完毕 : 添加用于创建员工的验证处理添加验证处理以更新员工添加数据填充服务添加部门和经理添加部门分配选项以...
使用Spring,我们可以让WEB框架自动将传递进来的请求参数填充到模型对象中,同时提供验证和错误处理。还可以管理用户在WEB表单中创建的对象的状态。在了解SpringMVC之前,我们先来复习下MVC. MVC从逻辑上把应用分为...
Spring WebFlux演示 Spring WebFlux简介随附项目... 要用博客文章中使用的数据填充数据库,请执行: # requires PostgreSQL database installed locally psql -h localhost -p 5432 -U postgres -d webflux-demo-data
Rest服务器是用Spring Boot(服务器)、Spring REST(消费数据)实现的。服务器测试视图的JSON对象是否正确(所有字段都被填充)并插入一个Fake db。 服务器采用 Clean Architecture 实现,在包 ...
它由Spring MVC和Spring Data JPA创建,将Thymeleaf用于接口,将MySQL用于数据库。 该存储库包括两个文件夹: PVZHeroes数据库创建者。 它由创建用户,架构和表SQL脚本以及从SQLite数据库文件填充表的Maven项目组成...
"基于springboot的二手车交易系统的设计与实现.zip"是一个软件项目文件包,通常包含了实现一个基于Spring Boot框架的二手车交易平台所需的所有源代码、资源文件、配置文件以及可能的数据库脚本。在压缩包中,你可以...
表单提交时,Spring mvc会按照请求表单项的名字自动为方法的参数对象填充属性值,并且支持级联的属性名。之前的createUser方法就是利用这个特性。 1 User类有三个属性及其get和set方法2 三个表单项的名字和User类的...
使用Mybatis映射器和Postgres数据库的MVC体系结构。 通过将html-templates与百里香一起使用,视图是静态的。 使用网络抓取脚本填充啤酒表,该脚本从bryggselv.no抓取所有谷物酿造的包装。 依存关系: 点安装bs4 点...
Spring MVC Java测试用例 Silicon Europ的测试任务-一个Web应用程序的实现,该应用程序提供了仓库管理系统的有限功能。 入门 要开始一个项目: 填充数据库 数据库:PostgreSQL 执行脚本 sql-database-create-...
springboot-mvc-data-jpa-example 运行该项目需要MySQL,Java 8和Maven 3+ 首先,您需要执行脚本: : git clone :jamerlan / springboot-mvc-data-jpa-example.git cd springboot-mvc-data-jpa-example / ...
结构后端使用Spring MVC设计,后端包括: “用户” POJO Vanilla存储库接口,仅扩展了CrudRepository 控制器具有两项功能:GetMapping用于获取所有当前用户,PostMapping用于添加新用户CommandLineRunner用一些初始...
该项目介绍了Zoo Managment System的Spring MVC Web应用程序,该示例使用MySQL数据库中的数据演示了所有基本的CRUD操作。 技术领域 此项目中使用了以下技术: SpringMVC 冬眠 JPA批注 Spring安全 JSTL 玛文 引导...
与DotNet数据对象结合的自定义数据对象设计 (二) 数据集合与DataTable 与DotNet数据对象结合的自定义数据对象设计 (一) 数据对象与DataRow ASP.NET中大结果集的分页[翻译] .net 2.0 访问Oracle --与Sql Server的...
SpringBootJavaScriptShowCase SpringBoot JavaScript展示柜Spring MVC和Pure JavaScript的展示柜使用纯/原始JavaScript: 从下拉列表中获取选定的“值”和“索引值” 从API URL填充DropDown 纯JS CRUD 具有内联编辑...
Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,得到Graphics实例,得到Image实例,填充颜色数组数据,初始化颜色数组。...
我刚做完的SAP JCO的小项目. ...在SAP中做好RFC函数,设置TABLE参数,使用查询语句填充数据到表中 2。 更改 \src\datasource\IDatasourceImpl.java 中的链接信息 3。 Daoimpl中的查询方法,字段名都要更改