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. from C++ to Java

    绝大部分对象都是指针,创建对象习惯性用new const ->  final 枚举类型 与 int的相互转换: 从int到enum: MyEnum.values()[x], where x mu ...

  2. 一个toolkit或者一个开源项目如何学习它并使用它

    一个toolkit或者一个开源项目如何学习它并使用它 一般一个流行的toolkit和开源项目,一般都会被广泛地被应用: 那么,我们如何学习它,如何应用它在自己的业务场景中呢? 答案就是:学习源码并借鉴 ...

  3. shell的函数返回值

    1.默认function的返回值包含0 和1,执行成功,返回0,执行失败,返回1,可以采用$?来获取执行结果 2.函数如何返回字符串呢,可以采用echo函数 #!/bin/bashfunction t ...

  4. 19-Python3 函数

    def area(width,heigh): return width*heigh def print_wecome(name): print('welcome',name) print('Runoo ...

  5. 【产品案例】我是如何从零搭建起一款健身O2O产品的?

    作者: Wander_Yang 我在年初参与到“SHAPE”这款健身产品的研发中,也算是第一次以产品经理的身份,从0开始负责一个产品的建立. 产品是一款O2O的智能健身连锁店,目前产品已经上线8个月, ...

  6. iOS 阅读唐巧博客心得

    1. iOS 开发中的争议(一) http://blog.devtang.com/2015/03/15/ios-dev-controversy-1/ 文中提及到,在使用的时候,应该是使用self.pr ...

  7. MyBatis基础入门《五》核心配置文件

    MyBatis基础入门<五>核心配置文件 描述: 在前面的章节中,简单的学习使用了一下mybatis,对于配置文件没有过多详细说明. 这里先描述项目中的一个核心配置文件:mybatis-c ...

  8. RN项目中使用react-native-elements报错: Unrecognized font family 'Material Icons'

    查询了一些方案,但各自的环境不尽相同,最后在google中找到了答案.主要问题在于 (1)版本问题 (2)Xcode配置问题 报错如下 解决步骤: 1 . 首先需要正确安装 npm i -S reac ...

  9. 水题T,二进制转16进制

    输入一个2进制的数,要求输出该2进制数的16进制表示. 在16进制的表示中,A-F表示10-15 Input第1行是测试数据的组数n,后面跟着n行输入.每组测试数据占1行,包括一个以0和1组成的字符串 ...

  10. 20155228 2016-2017-2 《Java程序设计》第8周学习总结

    20155228 2016-2017-2 <Java程序设计>第8周学习总结 教材学习内容总结 NIO与NIO2 NIO使用频道来衔接数据节点,在处理数据时,NIO可以让你设定缓冲区容量, ...