1.绑定默认数据类型

当前端请求参数较为简单的时候,后台形参可以直接使用SpringMVC提供的参数类型来绑定数据。

HttpServletRequest:通过request对象获取请求信息;

HttpServletResponse: 通过response处理响应对象;

HttpSession: 通过session对象得到session中存储的对象;

Model/ModelMap: Model是一个接口,ModelMap是一个接口的实现,作用是将Model数据填充到request域;

eg:

@Controller
public class UserController{
@RequestMapping("/selectUser")
public String selectUser(HttpServletRequest request){
String id=request.getParamter("id");
return "success";
}
}

2.绑定简单数据类型

对应的前端请求路径模式:

http://localhost:8080/projectName/selectUser?user_id=1

后台控制器如下:

@Controller
public class UserController{
@RequestMapping("/selectUser")
public String selectUser(@RequestParam Integer id){
System.out.println("id="+id);
return "success";
}
}
//@RequestParam的作用是什么?区分地址栏与前端的参数名的不同;

3.绑定POJO类型

传递多个参数时候,可以考虑用POJO类型。

eg:

User.java

package com.sjl.POJO;

import java.io.Serializable;

/*对多个数据进行封装*/
public class User implements Serializable {
private Integer id;
private String username;
private Integer password; public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public Integer getPassword() {
return password;
} public void setPassword(Integer password) {
this.password = password;
} @Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password=" + password +
'}';
}
}

UserController.java

......

/**
* 向用户注册页面跳转
* */
@RequestMapping("/toRegister")
public String toRegister(){
return "register";
} /**
* 接收用户注册信息
* */
@RequestMapping("/registerUser")
public String selectUser(User user){
String username=user.getUsername();
Integer password=user.getPassword();
System.out.println("username:"+username);
System.out.println("password:"+password);
return "success";
}
......
 
register.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/registerUser" method="post">
用户名:<input type="text" name="username"/><br/>
密&nbsp;&nbsp;&nbsp;码:<input type="text" name="password"><br/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br/>
<input type="submit" value="注册">
</form>
</body>
</html>

success.jsp

<%@ page contentType="text/html;charset=UTF-8" %>
<html>
<head>
<title>结果页面</title>
</head>
<body>
<h1 align="center">OK!</h1>
</body>
</html>

未完待补充!

Spring MVC数据绑定的更多相关文章

  1. Spring MVC—数据绑定机制,数据转换,数据格式化配置,数据校验

    Spring MVC数据绑定机制 数据转换 Spring MVC处理JSON 数据格式化配置使用 数据校验 数据校验 Spring MVC数据绑定机制 Spring MVC解析JSON格式的数据: 步 ...

  2. spring mvc 数据绑定

    1.spring mvc 默认提供的数据绑定类 private List<HandlerMethodArgumentResolver> getDefaultArgumentResolver ...

  3. Spring MVC 数据绑定流程分析

    1.    数据绑定流程原理★ ①   Spring MVC 主框架将 ServletRequest  对象及目标方法的入参实例传递给 WebDataBinderFactory 实例,以创建 Data ...

  4. Spring MVC数据绑定(一)

    1.数据绑定介绍 在执行程序时,Spring MVC会根据客户端请求参数的不同,将请求消息中的信息以一定的方式转换并绑定到控制器类的方法参数中.这种将请求消息数据与后台方法参数建立连接的过程就是Spr ...

  5. spring mvc 数据绑定总结

    spring mvc 做web开发时,经常会不知道如何合适绑定页面数据.用惯struts2的朋友更认为spring mvc 绑定数据不如struts2方便(本人最开始也是这么认为),经过一段时间的应用 ...

  6. Spring MVC数据绑定大全 .

    刚开始用spring mvc 做web开发时,经常会不知道如何合适绑定页面数据.用惯struts2的朋友更认为spring mvc 绑定数据不如struts2方便(本人最开始也是这么认为),经过一段时 ...

  7. Spring MVC 数据绑定 (四)

    完整的项目案例: springmvc.zip 目录 实例 项目结构路径: 一.配置web.xml <?xml version="1.0" encoding="UTF ...

  8. Spring MVC数据绑定(二)

    之前学习了SpringMVC数据绑定的基本知识和简单数据绑定以及POJO类型数据的绑定.接下来总结剩下的一些数据类型的绑定 1. 绑定包装POJO 所谓的包装POJO,就是在一个POJO中包含另一个简 ...

  9. Spring MVC 数据绑定(四)

        Spring支持多种形式的类型绑定,包括: 1.基本数据类型.String和String[] 2.简单对象类型 3.List类型 4.Set类型 5.Map类型 6.复合数据类型     接下 ...

  10. Spring MVC数据绑定入门总结

    1.基本类型 基本类型参数不可为空 正例:http://localhost:8080/demo/he?id=2 反例:http://localhost:8080/demo/he?id=(报400错误) ...

随机推荐

  1. MySQL数据库SQL修改数据规范

    start transaction; select id,rname,free_course_ph,cmp_id,free_date_limit_ph from ebk_students WHERE ...

  2. git 查看某个文件的修改记录

    有几种方式, (1)如果是在linux环境下,比如centos,ubuntu之类的,建议安装tig命令 炒鸡好用,tig后面可以跟文件或者文件夹,比如: (1.1)tig  dir_name (1.2 ...

  3. Python的Matplotlib库简述

    Matplotlib 库是 python 的数据可视化库import matplotlib.pyplot as plt 1.字符串转化为日期 unrate = pd.read_csv("un ...

  4. JS--变量及深浅拷贝

    JS变量分为基本类型和引用类型 基本类型数据包括Number, String, Boolean, Null, Undefined五种类型: 引用数据类型包括Array, Date, RegExp, F ...

  5. MySQL--10MySQL图形化管理工具

  6. Linux性能优化gprof使用

    gprof用于分析函数调用耗时,可用之抓出最耗时的函数,以便优化程序. gcc链接时也一定要加-pg参数,以使程序运行结束后生成gmon.out文件,供gprof分析. gprof默认不支持多线程程序 ...

  7. NPOI设置单元格格式

    转自:http://www.cr173.com/html/18143_2.html //创建一个常用的xls文件 private void button3_Click(object sender, E ...

  8. Macbook pro开启允许任何源

    sudo spctl --master-disable

  9. JavaScript 基础数组循环和迭代的几种方法

    JavaScript 数组循环和迭代   (之前一直没怎么注意数组循环,今天做一道题时,用到forEach循环发现它并没有按照我想象的样子执行,总结一下数组循环) 一.第一种方法就是for()循环   ...

  10. VS VC 读取 INI文件

    1.获取应程序同极目录下的config.ini路劲 void GetConfigFilePath(char *path,int len, char *file) { char module[256] ...