自定义View系列教程00–推翻自己和过往,重学自定义View

自定义View系列教程01–常用工具介绍

自定义View系列教程02–onMeasure源码详尽分析

自定义View系列教程03–onLayout源码详尽分析

自定义View系列教程04–Draw源码分析及其实践

自定义View系列教程05–示例分析

自定义View系列教程06–详解View的Touch事件处理

自定义View系列教程07–详解ViewGroup分发Touch事件

自定义View系列教程08–滑动冲突的产生及其处理


探索Android软键盘的疑难杂症

深入探讨Android异步精髓Handler

详解Android主流框架不可或缺的基石

站在源码的肩膀上全解Scroller工作机制


Android多分辨率适配框架(1)— 核心基础

Android多分辨率适配框架(2)— 原理剖析

Android多分辨率适配框架(3)— 使用指南


在上一篇博客中,我们从index.jsp传递参数到Controller中;Controller收到参数后再跳转到test.jsp。即执行流程为:index.jsp —> Controller —> test.jsp。现在我们可以把这些来自index.jsp的参数显示到test.jsp中么?答案是肯定的。这就是本篇博客要讲的参数回显。


简单数据类型的回显

对于简单数据类型,如:Integer、String、Float等使用Model将传入的参数再放到request域实现显示。对于该功能的实现非常简单,我们只需要在Controller的方法中添加Model类型的参数即可,例如:

    //1、测试SpringMVC传递int类型参数及其回显
        @RequestMapping(value="/testInt")
        public String testInt(Integer id,Model model){
            System.out.println("---> id="+id);
            model.addAttribute("id", id);
            return "test";
        }

然后我们在其他页面(例如此处的test.jsp)页面中取出该值即可:

1、测试SpringMVC传递int类型参数,回显结果:${id}

Object数据类型的回显

SpringMVC默认支持Object数据回显,SpringMVC自动将形参中的Object重新放回request域中,request的key为Object的类名(请注意,类名首字母小写)。例如,我们在Controller中这么写:

//3、测试SpringMVC传递Object类型参数及其回显
    @RequestMapping(value="/testUser")
    public String testUser(User user){
        System.out.println("---> user="+user);
        return "test";
    }

然后在test.jsp中取出参数:

3、测试SpringMVC传递Object类型参数,回显结果:${user.id} ${user.username} ${user.sex} ${user.address}

传递数据至下一个页面

我们常常有这样的需求:将数据传递至下一个页面。其实,这个也非常简单可以采用与Model类似的ModelMap即可。例如,我们在Controller中这么写:

//4、测试SpringMVC传递Object至下一个页面
    @RequestMapping(value="/testObject")
    public String testObject(ModelMap modelMap){
        User u=new User();
        u.setId(9527);
        u.setAddress("北京");
        u.setSex("男");
        u.setUsername("周星星");
        modelMap.put("u", u);
        System.out.println("---> user="+u);
        return "test";
    }

然后在test.jsp中取出参数:

4、测试SpringMVC传递Object至下一个页面,回显结果:${u.id} ${u.username} ${u.sex} ${u.address}<br>

按照惯例,贴出该项目中的关键代码;其余部分请参见上一篇博客,不再赘述


index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>SpringMVC传递参数</title>
</head>
<body>

    <hr size="2" color="red" />
    <b>1、测试SpringMVC传递int类型参数及其回显</b><br><br>
    <form action="${pageContext.request.contextPath }/user/testInt.do" method="post">
        ID:<input type="text" name="id" id="testIntId"> <br><br>
           <input type="submit" value="提交">
    </form>

    <hr size="2" color="red" />
    <b>2、测试SpringMVC传递String类型参数及其回显</b><br><br>
    <form action="${pageContext.request.contextPath }/user/testString.do" method="post">
        姓名:<input type="text" name="name" id="testNameId"> <br><br>
             <input type="submit" value="提交">
    </form>

    <hr size="2" color="red" />
    <b>3、测试SpringMVC传递Object类型参数及其回显</b><br><br>
    <form action="${pageContext.request.contextPath }/user/testUser.do" method="post">
        ID: <input type="text" name="id" id="testId">
               姓名:<input type="text" name="username" id="testUsername">
               性别:<input type="text" name="sex" id="testSex">
               地址:<input type="text" name="address" id="testAddress"> <br><br>
            <input type="submit" value="提交">
    </form>

    <hr size="2" color="red" />
    <b>4、测试SpringMVC传递Object至下一个页面</b><br><br>
    <form action="${pageContext.request.contextPath }/user/testObject.do" method="post">
      <br>
      <input type="submit" value="提交" >
    </form>

</body>
</html>

Controller

/**
* @author 原创作者:谷哥的小弟
* @blog   博客地址:http://blog.csdn.net/lfdfhl
* @time   创建时间:2017年7月29日 上午9:58:56
* @info   描述信息:SpringMVC回显数据
*/
package cn.com.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;

import cn.com.domain.User;

@Controller
@RequestMapping("/user")
public class AnnotationController {

    //1、测试SpringMVC传递int类型参数及其回显
    @RequestMapping(value="/testInt")
    public String testInt(Integer id,Model model){
        System.out.println("---> id="+id);
        model.addAttribute("id", id);
        return "test";
    }

    //2、测试SpringMVC传递String类型参数及其回显
    @RequestMapping(value="/testString")
    public String testString(String name,Model model){
        System.out.println("---> name="+name);
        model.addAttribute("name", name);
        return "test";
    }

    //3、测试SpringMVC传递Object类型参数及其回显
    @RequestMapping(value="/testUser")
    public String testUser(User user){
        System.out.println("---> user="+user);
        return "test";
    }

    //4、测试SpringMVC传递Object至下一个页面
    @RequestMapping(value="/testObject")
    public String testObject(ModelMap modelMap){
        User u=new User();
        u.setId(9527);
        u.setAddress("北京");
        u.setSex("男");
        u.setUsername("周星星");
        modelMap.put("u", u);
        System.out.println("---> user="+u);
        return "test";
    }

}

test.jsp

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>SpringMVC回显数据</title>
<style type="text/css">
p {
    font-size: 40px;
    font-family: 宋体;
    color: red;
    background-color: pink;
}
</style>
</head>
<body>
    <p>测试SpringMVC回显数据</p>
    <br>
    1、测试SpringMVC传递int类型参数,回显结果:${id}<br>
    2、测试SpringMVC传递String类型参数,回显结果:${name}<br>
    3、测试SpringMVC传递Object类型参数,回显结果:${user.id} ${user.username} ${user.sex} ${user.address}<br>
    4、测试SpringMVC传递Object至下一个页面,回显结果:${u.id} ${u.username} ${u.sex} ${u.address}<br>
</body>
</html>

效果图:

SpringMVC札集(05)——SpringMVC参数回显的更多相关文章

  1. SpringMVC札集(04)——SpringMVC传递参数

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  2. SpringMVC札集(02)——SpringMVC入门完整详细示例(下)

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  3. SpringMVC札集(01)——SpringMVC入门完整详细示例(上)

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  4. SpringMVC学习(四)———— 数据回显与自定义异常处理器

    一.数据回显技术 Springmvc默认支持对pojo类型的数据回显,默认不支持简单类型的数据回显 1.1.什么是数据回显? 在信息校验时,如果发生校验错误,那么把校验的数据信息,依然停留在当前页面, ...

  5. SpringMVC札集(07)——JSON数据

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  6. SpringMVC札集(10)——SSM框架整合

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  7. SpringMVC札集(09)——拦截器

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  8. SpringMVC札集(08)——文件上传

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  9. SpringMVC札集(03)——基于注解的SpringMVC入门完整详细示例

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

随机推荐

  1. nginx简介及优点总结

    简介:nginx是web服务器,由C语言开发,基于事件驱动能处理百万级别的tcp连接,高度模块化的设计和自由的许可证使得扩展其功能的模块层出不穷, 跨平台,可使用当前操作系统特有的一些高效API来提高 ...

  2. Centos 7 关闭邮件服务及禁用IPv6

    关闭邮件服务(禁用25端口) sudo systemctl stop dovecot sudo systemctl stop postfix sudo systemctl disable doveco ...

  3. [翻译]纠正PostCSS的4大认识误区

    市面上已经有很多的前端工具,再来引入新的前端工具,价值大不大?这主要取决于,它是否给开发人员提供了新的功能,是否值得花时间和精力去学习和使用? PostCSS出现时有一个很有趣的现象.像sass和le ...

  4. centos7配置安装redis

    关闭防火墙:systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启 ...

  5. Centos中使用Jenkins执行gulp命令:command not found

    在Centos操作系统,使用Jenkins的pipeline执行发布流程:jenkinsfile如下: stage("前端项目构架gulp") { steps { dir('src ...

  6. 医疗数据库 Caché 开发笔记

    目前所知的 Caché 是应用在医院信息系统(即 HIS),据说在欧美医疗卫生行业,Caché 占了 70% 的市场份额.国内的东华软件就是采用 Caché 数据库,东华软件在国内医院市场占有率大致为 ...

  7. hdu 4602 Partition 矩阵快速幂

    Partition Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Proble ...

  8. 机器学习经典书籍&论文

    原文地址:http://blog.sina.com.cn/s/blog_7e5f32ff0102vlgj.html 入门书单 1.<数学之美>PDF6 作者吴军大家都很熟悉.以极为通俗的语 ...

  9. MySQL索引最左原则

    通过实例理解单列索引.多列索引以及最左前缀原则 实例:现在我们想查出满足以下条件的用户id: 因为我们不想扫描整表,故考虑用索引. 单列索引: ALTER TABLE people ADD INDEX ...

  10. 【转】正向代理vs反向代理

    正向代理 正向代理:是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将 ...