《Java从入门到放弃》入门篇:springMVC数据传递

时间:2021-11-15 14:48:46

springMVC中的数据传递方式与JSP和Struts2相比,更加的简单。具体有什么样的区别呢?我们通过下面这张图来对比就知道了。

《Java从入门到放弃》入门篇:springMVC数据传递

随手画的,有些错别字,不用太在意.....《Java从入门到放弃》入门篇:springMVC数据传递

接下来,进入正题,springMVC中的常用数据传递方式有以下三种:

一、基本数据类型

二、自定义类型

三、地址栏传递

第二种最常用,分页时使用第三种。

具体实现步骤如下:

一、基本数据类型,使用@RequestParam接收数据,注意表单元素的name属性和@RequestParam的值要一一对应

1.1)创建login.jsp页面

1
2
3
4
5
6
7
  <body>
    <form action="login1.form" method="post">
        账号:<input name="loginid" type="text" /><br />
        密码:<input name="loginpwd" type="password" /><br />
        <input type="submit" value="登录" />
    </form>
  </body>

1.2)在MyController中新建login1方法

1
2
3
4
5
6
7
8
    @RequestMapping("/login1")
    public String lgoin1(@RequestParam("loginid") String username,
            @RequestParam("loginpwd") String userpwd){
        System.out.println("账号:"+username);
        System.out.println("密码:"+userpwd);
         
        return "index.jsp";
    }

1.3)访问login.jsp并提交数据,在地址栏输入http://localhost:8888/spDemo/login.jsp,并输入账号和密码。

《Java从入门到放弃》入门篇:springMVC数据传递     《Java从入门到放弃》入门篇:springMVC数据传递

从上面的代码应该可以看出私人定制是多么的好用了吧,哇哈哈哈哈·····《Java从入门到放弃》入门篇:springMVC数据传递

二、自定义类型,使用@ModelAttribute来接收数据

2.0)新建User类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class User {
     
    private String loginid;
    private String loginpwd;
     
    public String getLoginid() {
        return loginid;
    }
    public void setLoginid(String loginid) {
        this.loginid = loginid;
    }
    public String getLoginpwd() {
        return loginpwd;
    }
    public void setLoginpwd(String loginpwd) {
        this.loginpwd = loginpwd;
    }
     
}

2.1)在MyController中新建login2方法

1
2
3
4
5
6
    @RequestMapping("/login2")
    public String login2(@ModelAttribute("user") User use){
        System.out.println("账号:"+use.getLoginid());
        System.out.println("密码:"+use.getLoginpwd());
        return "index.jsp";
    }

2.2)修改login.jsp中form的action属性为login2

1
2
3
4
5
    <form action="login2.form" method="post">
        账号:<input name="loginid" type="text" /><br />
        密码:<input name="loginpwd" type="password" /><br />
        <input type="submit" value="登录" />
    </form>

2.3)访问login.jsp并提交数据

《Java从入门到放弃》入门篇:springMVC数据传递    《Java从入门到放弃》入门篇:springMVC数据传递

以属性的方式来传递数据是不是更加的清晰简单明了!!!《Java从入门到放弃》入门篇:springMVC数据传递

三、地址栏传递,使用@PathVariable来接收数据。

3.1)在MyController中新建login2方法

1
2
3
4
5
6
7
    @RequestMapping("/login_{idx}_{no}")
    public String login3(@PathVariable("idx"int index, @PathVariable("no"int number){
        System.out.println("值1:"+index);
        System.out.println("值2:"+number);
         
        return "index.jsp";
    }

2.2)在地址栏输入http://localhost:8888/spDemo/login_13_250.form进行访问。

《Java从入门到放弃》入门篇:springMVC数据传递

OK,到这儿springMVC数据传递中的接收数据就告一阶段,细心的客官应该已经发现,他喵的只能接收数据,不能继续向index.jsp页面传递啊!!!

莫急莫急,欲知如何继续向下一页面传递数据,我们下一篇再来分解!!!《Java从入门到放弃》入门篇:springMVC数据传递

《Java从入门到放弃》入门篇:springMVC数据传递的更多相关文章

  1. Java性能测试从入门到放弃-概述篇

    Java性能测试从入门到放弃-概念篇 辅助工具 Jmeter: Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试.JMeter 可以用于对服务器.网络 ...

  2. Flink从入门到放弃&lpar;入门篇1&rpar;-Flink是什么

    戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Fli ...

  3. Flink从入门到放弃&lpar;入门篇2&rpar;-本地环境搭建&amp&semi;构建第一个Flink应用

    戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Fli ...

  4. Flink从入门到放弃&lpar;入门篇3&rpar;-DataSetAPI

    戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Fli ...

  5. Flink从入门到放弃&lpar;入门篇4&rpar; DataStreamAPI

    戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Fli ...

  6. Vue&period;js2&period;0从入门到放弃---入门实例

    最近,vue.js越来越火.在这样的大浪潮下,我也开始进入vue的学习行列中,在网上也搜了很多教程,按着教程来做,也总会出现这样那样的问题(坑啊,由于网上那些教程都是Vue.js 1.x版本的,现在用 ...

  7. 转-Vue&period;js2&period;0从入门到放弃---入门实例(一)

    http://blog.csdn.net/u013182762/article/details/53021374 标签: Vue.jsVue.js 2.0Vue.js入门实例Vue.js 2.0教程 ...

  8. NodeJs 入门到放弃 — 入门基本介绍&lpar;一&rpar;

    码文不易啊,转载请带上本文链接呀,感谢感谢 https://www.cnblogs.com/echoyya/p/14450905.html 目录 码文不易啊,转载请带上本文链接呀,感谢感谢 https ...

  9. mysql从入门到放弃-入门知识介绍

    数据库在互联网网站的重要性 简单地说,数据库就是一个存放数据的仓库,这个仓库是按照一定的数据结构来组织和存储的,我们可以通过数据库提供的多种方法来管理数据库里的数据.由于数据库不易扩展,所以,在一个互 ...

随机推荐

  1. C语言内存分配

      (1)代码区(text segment).存放CPU执行的机器指令(machine instructions).通常,代码区是可共享的 (即另外的执行程序可以调用它),因为对于频繁被执行的程序,只 ...

  2. StartUML2&period;8破解

    StarUML官方下载地址:http://staruml.io/download StarUML是一个非常好用的画UML图的工具,但是它是收费软件​,以下是破解方法: ​1.使用Editplus或者N ...

  3. win10取消vpn使用远程默认网关

    打开%AppData%\Microsoft\Network\Connections\Pbk,找到rasphone.pbk文件(当你新建拨号连接或者VPN连接之后会在这个目录创建一个.pbk的文件,这个 ...

  4. 【C语言入门教程】2&period;5 字符型数据

    字符型数据用于在计算机上保存字符编码和一些文本控制命令,多个字符型数据和字符串结束符组成的序列称为字符串.Linux 系统与其他大多数操作系统一样,支持 ASCII编码对字符编码,每个字符占用 1 个 ...

  5. 【kAri OJ】621&period; 廖神的树

    时间限制 3000 ms 内存限制 65536 KB 题目描述 廖神和男神在植树节的时候准备玩一个奇怪的游戏,他们现在有一个被分割成n*n个格子的矩形土地,他们现在准备往这个地里种树,但这个种树游戏必 ...

  6. quartus中查看网表

    查看编译之后生成的逻辑结构 tools->Netlist Viewers->RTL vierer

  7. 雪佛兰Suburban&lowbar;百度百科

    雪佛兰Suburban_百度百科 雪佛兰Suburban

  8. Happy Matt Friends

    Happy Matt Friends Time Limit: 6000/6000 MS (Java/Others)    Memory Limit: 510000/510000 K (Java/Oth ...

  9. Spring &commat;Scheduled定时任务动态修改cron参数

    在定时任务类上增加@EnableScheduling注解,并实现SchedulingConfigurer接口.(注意低版本无效) 设置一个静态变量cron,用于存放任务执行周期参数. 另辟一线程,用于 ...

  10. 阿里云堡垒机密钥连接ECS服务器

    文:铁乐与猫 2017-6月中旬 堡垒机远程桌面windows系统就不用细说了 堡垒机远程ssh连接linux系统倒要说一下,毕竟是为安全一般只用通过密钥连接,而不使用密码的方式连接. 首先我们得在需 ...