- 方式1–使用HTTPServletRequest
@RequestMapping("/param1")
public Object testParam1(HttpServletRequest request){
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println(username+"---"+password);
return null; // 不知道要返回什么页面 ,默认将 param1 路径名作为jsp文件名
}
- 方法2的参数名和页面参数一致
//适用于 页面参数 比较少的情况下
@RequestMapping("/param2")
public Object testParam2(String username1,String password1){
System.out.println(username1+"---"+password1);
return null;
}
- 方式3–方法参数名和页面参数名称不一致 (但是又想拿到 页面参数)
/**
* 变量名可以随便写
* @param username1
* @param password1
* @return
* defaultValue: 代表当前参数的默认值 ,该属性不是必须的,是可选的 ,如果是分页可能设置为1
* required: 必须的, 默认值是true ,代表当前参数必须给值 , 可以设置为false
*
* 如果对参数没有特殊要求,一般写为: @RequestParam("password") String password 就可以了.
*/
@RequestMapping("/param3")
public Object testParam3(@RequestParam(name="username") String username1,
@RequestParam("password") String password1){
System.out.println(username1+"---"+password1);
return null;
}
- 方式4–参数过多使用对象作为参数
@RequestMapping("/param4")
public Object testParam4(User u){
System.out.println(u);
return null;
}
- 方式5–包含时间类型,需要类型转换
/**
* springmvc 对于时间 , 仅支持 格式: 2020/11/12 2020-01-02
*/
@RequestMapping("/param5")
public Object testParam5(User u){
/**
* 1. 封装时加注解
* @DateTimeFormat(pattern = "yyyy-MM-dd")
* private Date time;
* 2. 在springmvc.xml里配置全局日期时间转换器
* <bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean">
* <property name="converters">
* <set>
* <bean class="cn.hp.utils.TimeUtils"></bean>//因为此处可以配置多个转换器 ,所以 用set标签
* </set>
* </property>
* </bean>
*/
System.out.println(u);
return null;
}
前5种是前台jsp页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title