编程

SpringMVC接收前端数据的几种方式

2018-10-31  本文已影响900人  仙女味的Tiamo

    之前在面试题中看到这样的一个问题,SpringMVC有哪几种接收前端请求数据的方式?当时脑子里第一种反应就是HttpServletRequest,后面的却是答不出来了,后面看了看资料动手写了一个demo,总结一下这几种方式,如果有哪里总结的不对还请指正。

      为了方便,这里选用的是SpringBoot,将从搭建框架一步步讲解一下。

首先创建一个项目,我们选择在线安装,输入Spring地址:https://start.spring.io/,然后就可以一直选下一步了

因为我创建的是一个web项目,所以我们这里把web下面的web勾选上,这样就可以了。

好了,项目创建完成了,我们开始编辑代码。首先我们需要在pom.xml添加页面视图元素,添加如下代码:

然后我们开始画一个简单的登录界面,我们在static文件夹下新建一个login.html的文件,可以直接访问

写一个简单的form表单作为登录:

<form action="login.do">

    用户名:<input type="text" name="name"/>

    密码:<input type="password" name="password"/>

    <input type="submit" value="登陆">

</form>

下面我们在demo下面新建一个测试文件编写我们的测试代码:

第一种方式:通过Httprequest来获取前端请求数据,这也是最常见的一种方式了

现在我们访问测试一下,在浏览器输入:http://localhost:8080/login.html,输入我们的用户名跟密码点击登录:

然后我们再看一下控制台的输出跟我们界面的输入对不对

我们界面的输入跟控制台的输出是一致的,说明这种获取方式是可行的。

第二种方式:直接获取

现在我们访问测试一下,在浏览器输入:http://localhost:8080/login.html,输入我们的用户名跟密码点击登录

然后我们再看一下控制台的输出跟我们界面的输入对不对

我们界面的输入跟控制台的输出是一致的,说明这种获取方式是可行的。

第三种:通过@RequestParam注解来绑定页面参数获取

注意:@RequestParam注解括号里的值一定要与页面元素的name、password属性的值保持一致而userName、passWord则相当于取了个别名。

现在我们访问测试一下,在浏览器输入:http://localhost:8080/login.html,输入我们的用户名跟密码点击登录:

然后我们再看一下控制台的输出跟我们界面的输入对不对:

我们界面的输入跟控制台的输出是一致的,说明这种获取方式是可行的。

第四种:通过实体类的get方法获取

首先我们新建一个User的实体类,并添加set/get方法

注意:这里的属性要与页面元素的name属性值保持一致。

现在我们开始编写测试代码:

我们来做一下访问测试,在浏览器输入:http://localhost:8080/login.html,输入我们的用户名跟密码点击登录:

现在我们再看一下控制台的输出跟我们界面的输入对不对:

我们界面的输入跟控制台的输出是一致的,说明这种获取方式是可行的。

以上就是总结的SpringMVC获取前端请求数据的四种方式了,如果有哪里总结的不对或者言辞有误还请指正。

上一篇 下一篇

猜你喜欢

热点阅读