springmvc中的参数接收
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
/*
*插一段~:中文参数乱码,通过在web.xml中配置,spring-web包中的CharacterEncodingFilter过滤器即可解决,,
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
*/
@Controller
public class Params { public Params() {
System.out.println("costructor....");
} /*
* 方式1:直接将方法的形参名作为参数名进行接收,,注此时形参名要和参数名相同
*/
@RequestMapping("/param1")
public ModelAndView param(String name, String address) {
System.out.println(name + "::" + address);
return null;
} /*
* 方式2:直接将方法的形参名作为参数名进行接收,
* 同时在形参名和参数名不同的形参前面添加@@RequestParam("name"),标明该形参用于接收哪一个参数的值 ,注此时形参名要和参数名相同
*/
@RequestMapping("/param2")
public ModelAndView param2(@RequestParam("name") String username, String address) {
System.out.println(username + "::" + address);
return null;
} /*
* 方式3:在方法中注入servlet中的对象,servlet中的全部自带的对象均可以由spring自动注入,
* 本方法中通过注入HttpServletRequest和HttpServletResponse实现参数的获取
*/
@RequestMapping("/param3")
public ModelAndView param3(HttpServletRequest req, HttpServletResponse resp) {
String username = req.getParameter("name");
String address = req.getParameter("address");
System.out.println(username + "--" + address);
return null;
} /*
* 方式4:通过实现创建的模型,在该模型中含有与参数名相同的属性名, spring会自动将参数名和属性名相同的参数的参数值注入到模型的对应属性上
* 对于模型中没有属性名与参数名相同的参数,可以在方法中在写一个形参用于接收该参数的值 如本方法中的confirm
*/
@RequestMapping("/param4")
public ModelAndView param4(User u, String confirm) {
System.out.println(u.name + "--" + u.address + "--" + confirm);
return null;
} /*
* 方式5:直接从url中抽取参数的值,
* 通过使用占位符{},在{}中写入参数名,在方法形参类表中的每个形参前使用@pathVeriable("展位符中的参数名")标记
*此时,,,直接在地址栏填入http://localhost:8080/param5/34/sds.do ,该方法即可获取此url中的2个参数,此方法也称之为"restful"模式
*/
@RequestMapping("/param5/{id}/{name}")
public ModelAndView param5(@PathVariable("id") Long id, @PathVariable("name") String name) {
System.out.println(id + "--" + name);
return null;
} }
下面为表单,和模型user
/**
*USER模型
*/
public class User {
String name;
String address;
@Override
public String toString() {
return "User [name=" + name + ", address=" + address + "]";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
<%@ 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>Insert title here</title>
</head>
<body>
<form action="/param5.do" method="post">
姓名:<input type="text" name="name" /><br />
地址:<input type="text" name="address" /><br />
确认:<input type="text" name="confirm" /><br />
<input type="submit" value="提交" />
</form>
</body>
</html>
springmvc中的参数接收的更多相关文章
- SpringMVC中的参数绑定总结
众所周知,springmvc是用来处理页面的一些请求,然后将数据再通过视图返回给用户的,前面的几篇博文中使用的都是静态数据,为了能快速入门springmvc,在这一篇博文中,我将总结一下springm ...
- 【SpringMVC学习05】SpringMVC中的参数绑定总结——较乱后期准备加入 同一篇幅他人的参数绑定
众所周知,springmvc是用来处理页面的一些请求,然后将数据再通过视图返回给用户的,前面的几篇博文中使用的都是静态数据,为了能快速入门springmvc,在这一篇博文中,我将总结一下springm ...
- SpringMVC中的参数绑定
SpringMVC中的参数绑定 参数绑定的定义 所谓参数绑定,简单来说就是客户端发送请求,而请求中包含一些数据,那么这些数据怎么到达 Controller.从客户端请求key/value数据(比如ge ...
- SpringMvc中初始化参数绑定
初始化参数绑定与类型转换很类似,初始化绑定时,主要是参数类型 ---单日期 在处理器类中配置绑定方法 使用@InitBinder注解 在这里首先注册一个用户编辑器 参数一为目标类型 proper ...
- SSM-SpringMVC-11:SpringMVC中ParameterMethodNameResolver参数方法名称解析器
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 或许曾经的我们也见过一种方式http://localhost:8080/项目名/后台servlet?actio ...
- SpringMVC中参数绑定
SpringMVC中请求参数的接收主要有两种方式, 一种是基于HttpServletRequest对象获取, 另外一种是通过Controller中的形参获取 一 通过HttpServletReque ...
- SpringMVC中使用bean来接收form表单提交的参数时的注意点
这是前辈们对于SpringMVC接收表单数据记录下来的总结经验: SpringMVC接收页面表单参数 springmvc请求参数获取的几种方法 下面是我自己在使用时发现的,前辈们没有记录的细节和注意点 ...
- SpringMVC中参数接收
/** * * SpringMVC中参数接收 * 1.接收简单类型 int String * 2.可以使用对象pojo接收 * 3.可以使用集合数据接收参数 * 页面: name="ids ...
- springMVC中接收请求参数&&数据转发
### 1. 接收请求参数 #### 1.1. [不推荐] 通过HttpServletRequest获取请求参数 假设存在: <form action="handle_login.do ...
随机推荐
- win7系统安装Mysql5.7
1.下载mysql的zip包 把zip包解压到指定的目录,目录不能有中文和空格 2.进入%mysql%目录(注:%mysql%是解压目录,我的是:D:\JavaTool\mysql) 在%mysql% ...
- 第三天·HTML常用标签
一·<h1>-<h6> 单词缩写:headHTML的<h1>-<h6>代表了六个等级的标题,其中<h1>标签比较重要,因此要尽量少用.一般& ...
- Static class 与non static class的区别
内部静态类不需要有指向外部类的引用.但非静态内部类需要持有对外部类的引用.非静态内部类能够访问外部类的静态和非静态成员.静态类不能访问外部类的非静态成员.他只能访问外部类的静态成员.一个非静态内部类不 ...
- LeetCode 39. 组合总和(Combination Sum)
题目描述 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合. candidates 中的数字可以无限 ...
- vue网址路由的实时检测
有些时候,我们需要实时的检测网址,来进行判断,操作,处理等等 我们需要使用 watch 的监视器,然后直接进行操作 我们需要 ’$route.path‘ 属性来进行监听,且需要加引号,然后只要页面 ...
- Ubuntu16.04小白入门分享之 玩转Ruby你需要安装什么软件(持续更新)
Ubuntu提示功能很强大,一般如果你想安装什么软件,可以直接输入名字,然后会有提示,安装格式一般为: sudo apt install 名字 Ubuntu14.04/16.04命令行快速安装Ruby ...
- os x 技巧: 关闭打字时候光标闪烁
关闭光标闪烁: defaults write -g NSTextInsertionPointBlinkPeriodOff -float 0 defaults write -g NSTextInsert ...
- Python+requests+excel接口测试
2018-06-14 17:00:13 环境准备: - Python 3.7 - requests库 - xlrd 1.创建Excel文件 2.读取Excel文件 import xlrd clas ...
- java:maven(maven-ssm(聚合,分包开发))
1.maven-ssm: maven-ssm_diy: pom.xml: <?xml version="1.0" encoding="UTF-8"?> ...
- flum到kafka 收集数据 存储到redis 案例 (ip.txt)
ip.scala package ip import org.apache.kafka.clients.consumer.ConsumerRecord import org.apache.kafka. ...