当前位置: 首页 > news >正文

华为荣耀手机商城官方网站重庆做商城网站

华为荣耀手机商城官方网站,重庆做商城网站,好的平面设计灵感网站,个人网站能 做淘客吗不积跬步,无以至千里;不积小流,无以成江海。大家好,我是闲鹤,微信:xxh_1459,十多年开发、架构经验,先后在华为、迅雷服役过,也在高校从事教学3年;目前已创业了…

不积跬步,无以至千里;不积小流,无以成江海。大家好,我是闲鹤,微信:xxh_1459,十多年开发、架构经验,先后在华为、迅雷服役过,也在高校从事教学3年;目前已创业了7年多,主要从事物联网/车联网相关领域和业务。喜欢交友、骑行、写毛笔字、弹吉他、折腾硬件和写代码。


导读

这是一系列关于 SpringBoot Web框架实战 的教程,从项目的创建,到一个完整的 web 框架(包括异常处理、拦截器、context 上下文等);从0开始,到一个可以直接运用在生产环境中的web框架。而且所有源码均开源:https://github.com/xiongxianhe/springboot


正文

 上一遍《Spring Boot 返回 JSON》 中我们学习了如何从 Spring Boot 返回 json 数据,这篇我们继续讨论,Spring Boot 如何获取 HTTP 传递的参数。

从 HTTP 协议中,我们可知,传递参数的方式有这么几种:
1. 在 uri 中通过拼接查询字符串传递,这是我们常用的 HTTP GET 方式;
2. 在 HTTP 中的 body 中传递,由于 body 中传递数据的大小不限,所以这种方式可以传递多种格式的数据,如:multipart/form-data、application/x-www-form-urlencode、application/json、application/xml、text/plain、text/html 等;这类方式为 HTTP POST 方式。

下面我们讨论几种常用的方式:

方式一:在 controller 类的 action 方法中,把所需要的参数作为 action 方法的参数(get/post)

    @RequestMapping("/user/login")public String login(String name, String pwd) {String res = "you input: name:" + name + "; pwd:" + pwd;return res;}

这种方式同时支持这种方式同时支持 get 和 post(仅支持 multipart/form-data、application/x-www-form-urlencode )

方式二:在 controller 类的 action 方法中, 通过 HttpServletRequest 作为 action 方法的参数(get/post)

@RequestMapping("/user/login2")
public String login2(HttpServletRequest request) {String name = request.getParameter("name");String pwd = request.getParameter("pwd");return "you input: name:" + name + "; pwd:" + pwd;
}

这种方式同时支持这种方式同时支持 get 和 post(仅支持 multipart/form-data、application/x-www-form-urlencode )

方式三:在 controller 类的 action 方法中, 通过 bean 作为 action 方法的参数(get/post)

@RequestMapping("/user/login3")
public String login3(User user) {return user.toString();
}

User.java 内容:

package com.jdz.beans;public class User {private Integer uid;private String name;private String pwd;@Overridepublic String toString() {return String.format("uid: %d name: %s pwd:%s", this.uid, this.name, this.pwd);}
}

这种方式同时支持这种方式同时支持 get 和 post(仅支持 multipart/form-data、application/x-www-form-urlencode )

方式四:通过 @PathVariable 获取 uri 路径中的参数(get)

@RequestMapping(value = "/user/login4/{name}/{pwd}", method = RequestMethod.GET)
public String login4(@PathVariable String name, @PathVariable String pwd) {return "you input: name:" + name + "; pwd:" + pwd;
}

请求方式:

http://localhost:8080/user/login4/name-lg4/pwd-lg4

这种方式只适合 get 方法

方式五:通过 @RequestParam 注解(get/post)

@RequestMapping("/user/login5")
public String login5(@RequestParam(value = "name", required = true) String name, @RequestParam("pwd") String pwd) {return "you input: name:" + name + "; pwd:" + pwd;
}

这种方式同时支持这种方式同时支持 get 和 post(仅支持 multipart/form-data、application/x-www-form-urlencode )

方式六:通过 @RequestParam 注解,并用 Map 来接收参数(get/post)

@RequestMapping("/user/login6")
public String login6(@RequestParam Map<String, Object> params) {return "you input: name:" + params.get("name") + "; pwd:" + params.get("pwd");
}

这种方式同时支持这种方式同时支持 get 和 post(仅支持 multipart/form-data、application/x-www-form-urlencode )

方式七:通过 @RequestBody 注解,并用 Map 来接收参数(json)

@RequestMapping("/user/login7")
public String login7(@RequestBody Map<String, Object> params) {return "you input: name:" + params.get("name") + "; pwd:" + params.get("pwd");
}

这种方式适合 application/json ,用于获取 json 格式

其他

在此基础上还有其他的方式,上面主要列举了一些常用的用法,每种用法可以根据实际场景进行选择使用。

源码:https://github.com/xiongxianhe/springboot.git


系列文章
【SpringBoot Web框架实战(开源)】001 使用 pom 方式创建 SpringBoot 第一个项目
【SpringBoot Web框架实战教程(开源)】02 SpringBoot 返回 JSON


近期文章
# 车联网
【自动化运维】不要相信人,把所有的东西都交给机器去处理
从华为无线网络框架说Dispatch服务
百万级物联网框架设计
高并发服务器之泄峰
 

# 硬件
stm32驱动直流电机实现启动/加速/减速/倒车/停车等功能
stm32 定时器输出比较(OC)与PWM的理解和应用
stm32 定时器中断

http://www.yayakq.cn/news/20713/

相关文章:

  • 自动化项目外包网网站换空间不换域名对seo有影响吗
  • 潜力的网站设计制作工人找工作哪个网站好
  • 一个网站开发的假设wordpress推荐文章插件
  • 自己做广告用什么软件湛江seo推广外包
  • 网站仿学校官网入口
  • 网站制作流程和方法湘潭做网站 磐石网络
  • 网站用绝对路径好还是相对路径seo做网站美工的理由
  • 网站开发一次性费用泰安公司网站建设价格查询
  • 网站建设被骗维护费建网站要买服务器吗
  • 网站建设和运营wordpress定时任务原理
  • 温州做微网站设计python做网站原理
  • 手机网站怎么搭建西宁最好网站建设公司哪家好
  • 河南郑州广告公司网站建设网络服务合同范本免费
  • 手机图片网站 模版dedecms企业网站模板
  • 网站建设 系统 排名wap是什么意思歌词
  • 杭州做微信网站软件公司网站建设 计划书
  • 网站架构设计师简历网站内容更新及时
  • 网站建设捌金手指花总二六网站运营与管理的一个目的
  • 一般做外贸上什么网站好ps制作手机app界面设计
  • 注册网站步骤淘宝推广怎么做
  • 山东省建设执业注册中心网站单页面网站 wordpress
  • 做的好英文网站河南航天建设工程有限公司网站
  • 建立商城网站网络营销推广是什么
  • 厦门seo计费深圳做网站可用乐云seo十年
  • 网站建设自己怎么做一个门户网站怎么做
  • 网站愉建设网页制作图片
  • 汕头食品骏域网站建设wordpress远程附件代码
  • 有那些可以自己做壁纸的网站杭州建立网站
  • 定制网站开发商业计划书网站开发费如何入账
  • 毕业设计网站前端代做有效作业设计方案