SpringMVC参数传递方式的7种方式

本文详细介绍了SpringMVC中参数传递的7种方式,包括使用HTTPServletRequest、参数名匹配、对象参数、日期转换及异步提交JSON等。特别讨论了日期类型的转换和RESTful API的应用。
摘要由CSDN通过智能技术生成
  1. 方式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文件名
    }
  1. 方法2的参数名和页面参数一致
//适用于 页面参数 比较少的情况下
    @RequestMapping("/param2")
    public Object testParam2(String username1,String password1){
   
        System.out.println(username1+"---"+password1);
        return null;
    }
  1. 方式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;
    }
  1. 方式4–参数过多使用对象作为参数
@RequestMapping("/param4")
    public Object testParam4(User u){
   
        System.out.println(u);
        return null;
    }
  1. 方式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
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值