SpringBoot 获取前端页面参数的集中方式总结
1.指定前端URL请求参数名称与方法名称一致,这种方式简单来说就是URL请求格式中参数需要与方法的参数名称对应上,举个例子,这么一个URL请求:http://localhost:8080/0919/test1?name = xxx & pwd = yyy 在指定的控制器类上加上Controller 注解,同时指定RequestMapping注解即可,当请求路径参数与方法参数匹配上时会自动注入。
|
1
2
3
4
5
6
7
8
|
@RequestMapping("/test1")@ResponseBodypublic String test1( String name, String pwd ){ String s1 = name; String s2 = pwd; String s1 + s2; } |
启动主程序,访问浏览器出现下图,表明注入参数成功:
|
1
|
xxxyyy |
2.第二种方式是通过HttpServletRequest来获取前端页面参数,代码如下。简单来说就是通过调动Request的getParameter方法来获取参数,比如访问路径类似这样:http://localhost:8080/0919/test2?firstName = zhang & lastName = san
|
1
2
3
4
5
6
7
8
|
@RequstMapping("/test2")@ResponseBodypublic String test2( HttpServletRequest request ){ String firstName = request.getParamenter("firstName"); String lastName = request.getParameter("lastName"); return firstName = lastName; } |
启动主程序,访问浏览器出现如下结果,表明注入成功,这种方式也可以表单参数,一般get和post请求都可以
|
1
|
zhangsan |
3.第三种方式是通过创建一个JavaBean对象来封装表单参数或者是请求URL路径中参数,具体代码如下
|
1
2
3
4
5
6
7
8
|
@RequestMapping("/test3")@ResponseBodypublic String test3( Student student ){ String firstName = student.getFirstName(); String lastName = student.getLastName(); return firstName = lastName; } |
对应的JavaBean对象如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
public class Student{ private String firstName; private String lastName; public Student() { super(); } public String getFirstName() { return firstName; } public void setFirstName( String firstName ) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName( String lastName ) { this.lastName = lastName; }} |
简单来说就是将表单参数作为一个JavaBean类的属性,通过设置方法参数为一个JavaBean对象,之后在方法中通过调用对象的get方法来获取表单传过来的参数,比如访问路径是:http://localhost:8080/0919/test3?firstName = zhang & lastName = san 启动主程序,出现如下结果,表明参数注入成功,这种方式如果请求的表单参数很多,可以考虑使用这种方式。
|
1
|
zhangsan |
4.第四种方式是通过PathVariable注解来绑定请求路径的参数,参考代码如下
|
1
2
3
4
5
6
|
@RequestMapping( value = "/test4/{a}/{bbb}")@ResponseBodypublic String test4( @PathVariable("a") String aaa, @PathVariable String bbb ){ return aaa+bbb;} |
这种情况简单来说就是URL中采用动态绑定的形式表示。之后在方法中指定的参数通过PathVariable来将请求的URL中的参数绑定到方法参数,在这里不指定PathVariable注解的具体值时按照请求路径动态变量的顺序与注解顺序一致即可注入。如果想指定注入,那么指定PathVariable注解的值与动态变量名一致即可特定注入,比如请求路径是:http://localhost:8080/0919/test4/111/222
启动主程序,出现如下结果,表明注入成功:
|
1
|
111222 |
5.第五种方式是通过RequestParam注解来获取,具体代码如下:
|
1
2
3
4
5
6
|
@RequestMapping( value = "/test5")@ResponseBodypublic String test5( @RequestParam("aaa") String aac,@RequstParam("bbb") String bbb){ return aac+bbb;} |
这种方式是通过URL路径的形式将请求路径上的参数绑定都方法参数上,简单来说就是实参值赋给响应的形参,与上面这种方式的区别是前者是动态URL模板注入,这里是普通的URL请求注入,比如访问这个路径:
http://localhost:8080/0919/test5?aaa = 111 & bbb = 4444
启动主程序,出现如下结果,表明注入成功
|
1
|
1114444 |
6.第六中方式是通过ModelAttribute方式来注入参数的,具体代码如下:
|
1
2
3
4
5
6
7
8
9
10
11
|
@RequestMapping( value = "/kkk")public String kkk(){ return "test2";}@RequestMapping( value = "/test6")public String test6( @ModelAttributer("kkk") Student s ){ return "test3";} |
这种方式一般是通过在页面展示,所以这里创建两个页面做测试test2.jsp和test3.jsp进行测试
|
1
2
3
4
5
6
7
8
|
<body> <form action = "<%= request.getContextPath()%>/0919/test6" method = "post"> firstName: <input type = "text" name = "firstName"/><br/> lastName<input type = "text" name = "lastName"><br/> <input type = "submit" value = "提交"/> <input type = "reset" value = "重置"> </form></body> |
|
1
2
3
|
<body> ${kkk.firstName} + ${kkk.lastName}</body> |
简单来说就是通过ModelAttribute注解将请求参数封装到指定的Javabean对象,同时通过value值将这接受了表单参数对象赋给value,这里将S赋给了一个变量名为kkk的存在,之后就可以在JSP页面通过这个变量名使用el表达式来获取传过来的参数,测试路径为:http://localhost:8080/0919/kkk

输出结果为:
|
1
|
bbb+aaa |
SpringBoot 获取前端页面参数的集中方式总结的更多相关文章
- Spring Boot获取前端页面参数的几种方式总结
Spring Boot的一个好处就是通过注解可以轻松获取前端页面的参数,之后可以将参数经过一系列处理传送到后台数据库. 获得的方式有很多种,这里稍微总结一下,大致分为以下几种: 1.指定前端url请求 ...
- springboot获取URL请求参数的多种方式
1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交. /** * 1.直接把表单的参数写在Controller相应的方法的形参中 * @pa ...
- JAVAEE_Servlet_12_获取前端页面请求方式 HttpServletRequest HttpServletResponse
获取前端页面请求方式 * 前端页面发送的请求方式应该是后端服务器需要的请求方式保持一致,若不一致应该提示错误信息. * 获取到前端的请求方式之后通过if语句进行判断, if("GET&quo ...
- servlet自动获取前端页面提交数据
servlet自动获取前端页面jsp提交数据 以下是本人在学习过程中,因前端页面提交参数过多,后台servlet封装实体类过于麻烦而写的一个工具类,应用于jsp/servlet数据提交后,基于MVC+ ...
- SpringBoot获取http请求参数的方法
SpringBoot获取http请求参数的方法 原文:https://www.cnblogs.com/zhanglijun/p/9403483.html 有七种Java后台获取前端传来参数的方法,稍微 ...
- 使用layer 弹出对话框 子父页面相互参数传递 父页面获取子页面参数实例
一.先看效果: 1.点击三个点的图标弹出了子页面: 2.子页面调用父页面方法,图一调用父页面方法,图二得到父页面var变量. 3.选择之后,关闭弹框,父页面得到子页面单选框选择的v ...
- Controller传值到前端页面的几种方式
一丶追加字符串传值 #region 02-追加字符串传值 /// <summary> /// 02-追加字符串传值 /// </summary> /// <returns ...
- springboot获取URL请求参数的几种方法
原文地址:http://www.cnblogs.com/xiaoxi/p/5695783.html 1.直接把表单的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于pos ...
- SpringBoot获取请求的参数
说明 SpringBoot 为我们封装了许多,简便的获取请求参数的方法! 1.获取无注解获取请求参数 请求地址:http://192.168.0.115:8080/myproject/test/noA ...
随机推荐
- Java补漏(一)
第一章前言 在学长的建议下,为了弥补之前学Java漏下的或者不是非常清楚的知识点,买了本蛮好的教科书-<Java学习笔记(JDK6)>,正式又一次学习.为了记下一些让我恍然大悟的知识 ...
- 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何修改代码字体
工具-选项 TwinCAT,PLC Environment,Text editor,然后在文本区域中修改字体 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i. ...
- 从word中导出图片
想把word里面的图片导出来,可以这么操作: 1.右键word里面的图片,复制 2.打开电脑的画图工具,粘贴,然后保存
- Git学习笔记一--创建版本库、添加文件、提交文件等
Git,是Linus花了两周时间用C写的一个分布式版本控制系统.牛该怎么定义? 其实,很多人都不care谁写了Git,只在乎它是免费而且好用的!So do I! 下面开始我们的学习: 1.Git安装( ...
- RxAndroid 的基本使用
1.基本概念 Rx是RxJava针对Android的定制版本.这个版本中通过增加最少的类使在Android应用中编写响应式组件简单而且无障碍,特别之处在与它还提供了一个Scheduler,可以在主线程 ...
- [Objective-C A]-知识点锦集
1.@autoreleasepool why1 2.retain O-C内存管理和点语法 1>OC内存管理正常情况要使用大量的retain和relrese操作 2>点语法可以减少使用re ...
- AL2018届校招笔试——自然语言处理
[单选40min+在线编程80min] 单选 1.以下进程的哪些行为不会导致操作系统向该进程发送一个信号?() A. 程序终止退出 B. 访问了一个非法的内存地址 C. 一个该程序正在监听的socke ...
- 使用jq Deferred防止代码被回调函数分解分解的支离破碎
//移动人物 function moveInterval(stopPosotion){ var dtd = $.Deferred(); // 生成Deferred对象 var yidong= wind ...
- 物联网通信协议——比较-MQTT、 DDS、 AMQP、XMPP、 JMS、 REST、 CoAP
物联网通信协议——比较-MQTT. DDS. AMQP.XMPP. JMS. REST. CoAP AMQP & MQTT & DDS (https://www.youtube.c ...
- etymology-F
forsake [fə'seɪk] vt.放弃:断念. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400 ...