1、方法一(通过HttpServletRequest方式接收)

1.1、添加servlet的jar包

javax.servlet

javax.servlet-api

3.1.0

provided

1.2、spring.xml以及web.xml配置如上一章所示

1.3、创建index.jsp和success.jsp

Hello World!

test

Created by IntelliJ IDEA.

User: Mr Wei

Date: 2020/*/*

Time: 15:19

To change this template use File | Settings | File Templates.

--%>

Title

测试成功!

1.4、添加Controller类

package com.fan.controller;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletRequest;

@Controller

public class Controller1 {

@RequestMapping("/user")

public String test2(HttpServletRequest request){

String u = request.getParameter("username");

String p = request.getParameter("password");

System.out.println(u+" "+p);

return "success";

}

}

1.5、启动tomcat进行测试

2、方法二(页面传值时的key=处理请求的方法的参数名)

2.1、jar包的添加,spring.xml以及web.xml配置如上一章所示

2.2、创建index.jsp和success.jsp

Hello World!

test

Created by IntelliJ IDEA.

User: Mr Wei

Date: 2020/*/*

Time: 15:19

To change this template use File | Settings | File Templates.

--%>

Title

测试成功!

2.3、添加Controller类

package com.fan.controller;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

@Controller

public class Controller1 {

@RequestMapping("/user")

//传入的值 即username要和前端传入的key值相同。页面传值时的key=处理请求的方法的参数名

public String test1(String username){

System.out.println("传入的用户信息是:"+username);

return "success";

}

}

2.4、启动tomcat进行测试(2种测试方式)

2.4.2、点击index.jsp页面的test链接,也可以实现相应的跳转。

2种测试方式控制台结果如下如所示

测试结果

3、方法三(封装成对象,使用控件名和对象的属性名一致的方式进行接收)

3.1、jar包的添加,spring.xml以及web.xml配置如上一章所示

3.2、创建index.jsp和success.jsp

Hello World!

1

2

3

4

5

Created by IntelliJ IDEA.

User: Mr Wei

Date: 2020/*/*

Time: 15:19

To change this template use File | Settings | File Templates.

--%>

Title

测试成功!

3.3、添加实体类

public class User {//使用控件名和对象的属性名一致的方式进行接收,即username和前端的表单中的name值一致

private String username;

private String password;

private String[] box; //list集合接收也可以

public String getUsername() {

return username;

}

public void setUsername(String username) {

this.username = username;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

public String[] getBox() {

return box;

}

public void setBox(String[] box) {

this.box = box;

}

@Override

public String toString() {

return "User{" +

"username='" + username + '\'' +

", password='" + password + '\'' +

", box=" + Arrays.toString(box) +

'}';

}

}

3.4、添加Controller类

@Controller

public class TestController {

//(3)使用控件名和对象的属性名一致的方式进行接收

@RequestMapping("/user")

public String test(User user){

System.out.println(user);

return "success";

}

}

3.5、启动tomcat进行测试

测试结果

4、随笔测试

4.1、index.jsp和success.jsp

Hello World!

Created by IntelliJ IDEA.

User: Mr Wei

Date: 2020/*/*

Time: 15:19

To change this template use File | Settings | File Templates.

--%>

Title

测试成功!

4.2、Controller类

package com.fan.controller;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import java.util.Date;

@Controller

public class Controller1 {

@RequestMapping("/user")

public String test3(String username, String password, Date day){

System.out.println(username+"--"+password+"--"+day);

return "success";

}

// @InitBinder

// public void initBinder(WebDataBinder binder, WebRequest request) {

// //转换日期 注意这里的转化要和传进来的字符串的格式一直 如2015-9-9 就应该为yyyy-MM-dd

// DateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd");

// binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));// CustomDateEditor为自定义日期编辑器

// }

}

4.3、启动tomcat进行测试

图片1.png

若输入的日期格式如:yyyy-MM-dd,则会报错。

图片2.png

若输入的日期格式如:yyyy/MM/dd,则会跳转成功,Spring MVC框架默认支持转换的日期格式是yyyy/MM/dd。

解决日期问题方式:

(1)使用string接受日期,接受后,再转换: SimpleDataFormate

(2)使用工具类处理日期(见有道云笔记SpringIOC1)

特别注意@RequestParam()

图片

注意:前端页面定义的是age,后端controller接收值是userage,@RequestParam()可以将这两个值对应起来,若age没有传值,则默认该userage为19.

java调用视图如何传参_Spring MVC中 视图 向 控制器 传参(接收方式)相关推荐

  1. Java项目中如何找control层,再问一个,业务层和MVC中Controler(控制器)的关系解决方法...

    再问一个,业务层和MVC中Controler(控制器)的关系 本类是同一个问题的,但是在我另外的一个帖子中没有很好的表达出来,真是失败啊. 进入正题: 众所周知,Servlet 和 Struts中的A ...

  2. java web 文件上传工具类_JavaWeb中实现文件上传的方式有哪些?

    上回我们说了下文件下载的方式有哪些,这次我们从不同的环境下简单来说说文件上传的方式有哪些. 文件上传的方式Servlet2.5 方式 Servlet3.0 方式 SpringMVC 方式 案例实操 S ...

  3. ASP.NET MVC中controller和view相互传值的方式

    ASP.NET MVC中Controller向view传值的方式: ViewBag.ViewData.TempData 单个值的传递 Json 匿名类型 ExpandoObject Cookie Vi ...

  4. MVC中返回Json的几种声明方式

    第一种,单行数据 var result = new { name = "linfei", age = "26", address = "wuhan&q ...

  5. java接口参数类型为枚举_Spring MVC处理参数中的枚举类型通用实现方法

    前言 在开发的过程中,会涉及到大量的枚举类型数据,我们都知道,Springmvc本身能自动转换很多的数据类型,也支持你自定义转换类型,非常灵活. 本文主要介绍的是关于Spring MVC处理参数的枚举 ...

  6. java 时间格式化_彻底解决Spring mvc中时间的转换和序列化等问题

    痛点 在使用Spring mvc 进行开发时我们经常遇到前端传来的某种格式的时间字符串无法用java8的新特性java.time包下的具体类型参数来直接接收. 我们使用含有java.time封装类型的 ...

  7. jsp中的url拼接的参数传递到controller乱码_Spring MVC中的拦截器

    拦截器是 AOP 编程思想的典型应用 详述 Spring MVC 框架中拦截器 Interceptor 的使用方法​blog.csdn.net 实现 1:创建一个controller类 package ...

  8. core 读取视图html,ASP.NET Core MVC 之视图(Views)

    摘要: ewData之间可以混合使用.  2.动态视图  不声明类型,但具有传递给它们的模型实例的视图可以动态引用此实例.但不提供任何编译保护或IntelliSense.如果属性不存在,则页面将在运行 ...

  9. JAVA调用有道API接口对数据库中的中文语句进行翻译

    今天遇到一个小需求,就是将数据库中的某个中文字段翻译成英文,总共有六百多条,直接只用数据库update语句和手动翻译效率很慢.我想这如果可以调用有道翻译API接口将翻译的语句结合原中文字段拼接成upd ...

最新文章

  1. ​《头号玩家》中的“绿洲”,用 VR 可以找到
  2. cocos游戏源码怎么用_亲子游戏怎么玩?游戏方式用对了,才会事半功倍
  3. docker入门及安装
  4. (Prototype)原型模式的Java实现(转)
  5. win oracle 重启命令,Windows下命令行如何启动Oracle10g?
  6. 用VC写Assembly代码
  7. openmp与openmpi区别
  8. CentOS通过yum安装高版本gcc
  9. java计算机毕业设计技术的游戏交易平台源码+数据库+系统+lw文档+mybatis+运行部署
  10. 标准型微电脑酸碱度氧化还原电位控制器(UPH -100C)
  11. matlab sinh是什么,sinh(sinh怎么读)
  12. 2020中国云计算公司排名 哪家的云服务器最好用?
  13. MeEdu开源网校系统-手动安装教程(完整版)
  14. lintcode-最近公共祖先
  15. 如何使用github(一)
  16. java long 详解_JavaSE之Long 详解 Long的方法简介以及用法
  17. 精准引流怎么推广:免费的引流推广营销技巧
  18. Codeforces Round #295 (Div. 2) ABC
  19. 防监听 俄启用新型信息安全系统
  20. 车企们的第一辆车是什么样的

热门文章

  1. 原来SqlSession只是个甩手掌柜?不可思议!
  2. 基于深度学习的单目深度估计综述
  3. 使用k8s搭建一个https的wordpress无坑版
  4. 麻将 胡牌 算法(任意癞子)
  5. 什么是水利工程?水利工程包含哪些内容?
  6. 四、数据透视表公式与函数
  7. Cadence Allegro 在Gerber光绘中生成板卡层叠结构文件
  8. 对模式的迷信,大部分是幻觉和妄想
  9. 产品经理—开发转产品,浅谈自我学习与探索
  10. 2022.11.13 学习周报