美文网首页
SpringMVC-接收表单数据的方式

SpringMVC-接收表单数据的方式

作者: 我问你瓜保熟吗 | 来源:发表于2020-02-08 22:15 被阅读0次
1P214160451-1.jpg

前台提交表单数据到后台进行处理

form 表单提交数据,get方法会将数据通过请求url方式向后台传送,post方式会将数据放在请求头里。
get传送的数据量较小,不能大于2KB。post传送的数据量较大
.get安全性非常低,post安全性较高。
get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据

image.png

一、通过表单提交

前台代码

<div id="form-div">
    <form id="form1" action="/form/login" method="get">
        <p>用户名:<input name="userName" type="text" id="txtUserName" tabindex="1" size="15" value=""/></p>
        <p>密码:<input name="password" type="password" id="TextBox2" tabindex="2" size="16" value=""/></p>
        <p><input type="submit" value="登录"> <input type="reset" value="重置"></p>
    </form>
</div>

1、直接用Controller方法参数接收

接受数据的参数名要和前台变量名一致才能收到数据如:userName不能写成username

    @RequestMapping("/login")
    public void login(String userName,String password){
        System.out.println(password);
        System.out.println(userName);

    }

2、利用@RequestParam注解可以自定义参数名,并可以设置默认参数值。

    @RequestMapping("/login")
    public void login(String password, @RequestParam(value = "userName",defaultValue = "root") String username){
        System.out.println(password);
        System.out.println(username);

    }

3、用HttpServletRequest 接收

1、前台用get方式提交,服务器端用Request.QueryString获取全部变量的值
2、论前台用get还是post都可以用request.getParameter()获取单个指定变量,入伙前台变量是一个checkbox复选框,后台获取到的值是一个字符串数组,因此需要使用getParameterValues方法来获取
3、getAttribute获取一个对象,getParameter()获取一个变量值

    @RequestMapping("/login")
    public void login(HttpServletRequest request){

        String queryString = request.getQueryString();
        String userName = request.getParameter("userName");
        String password = request.getParameter("password");

        System.out.println(queryString);
        System.out.println(userName);
        System.out.println(password);
    }
运行输出截图

二、通过ajax提交

略,有空再写吧,难受~

  • @RequestBody接收的是请求体里面的json字符串,get方式无请求体,所以@RequestBody只能配合post使用。
  • @RequestBody@RequestParam()可以同时使用,@RequestBody最多只能有一个,而@RequestParam()可以有多个。一个接收请求体参数,一个接收key-value里面的参数。
  • @RequestBody可以用HashMap接收前台数据,也可以用实体类接收。@RequestBody HashMap<String,Object> map或者@RequestBody User user
  • json对象要用 JSON.stringify(data) ,进行转换成json字符串

相关文章

  • SpringMVC-接收表单数据的方式

    前台提交表单数据到后台进行处理 form 表单提交数据,get方法会将数据通过请求url方式向后台传送,post方...

  • nodejs-getpost提交http请求响应

    理解表单使用post方式提交数据时后端接收数据的方法 理解表单使用get方式提交数据时后端接收数据的方法 理解po...

  • 5、接收表单数据

    接收表单数据:就是说用户在表单输入数据提交表单之后,页面怎么跳转,后台是怎么才能接收到这些数据。怎么查看呢,就是打...

  • form表单-get请求,post请求,小文件上传

    get请求 HTML界面 默认就是get方式提交表单数据 提交的数据, 必须有name属性 PHP界面 如何接收g...

  • Nodejs 文件上传

    node js 接收表单数据原理 使用 formidable 上传文件

  • HTML表单指南

    HTML表单指南 表单 表单的作用:HTML表单用于接收不同类型的用户输入,用户提交表单时向服务器传输数据,从而实...

  • 前端—表单表格

    一、表单 作用:将前台用户数据通过get或post请求方式,提交给后台,并将新页面标签中接收与后台相应 请求方式:...

  • 大连滕泰科技学习笔记2020-05-13

    1,web开发方法论中第二条 获取表单数据get方式post方式 2,表单数据方式 1个表单对应多个实体类提交数据...

  • springmvc使用

    springmvc高级参数绑定 数组绑定表单中如果有多个相同的name需要提交数据, 服务器可以使用数组的方式接收...

  • bWAPP中的HTML injection by L0st

    GET和POST型 表单提交: 数据过滤: Low: 构造payload: 直接弹窗了,因为接收表单提交的参数后...

网友评论

      本文标题:SpringMVC-接收表单数据的方式

      本文链接:https://www.haomeiwen.com/subject/yfvixhtx.html