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

网站托管服务人民日报今日新闻

网站托管服务,人民日报今日新闻,网站开发专业的建设设想,网站开发好了如何上线目录 一、请求二、传递单个参数三、传递多个参数四、传递对象五、RequestParam注解 后端参数重命名(后端参数映射)六、传递数组七、传递集合,RequestParam八、传递JSON数据8.1 JSON字符串和Java对象互转8.1.1 Test注解8.1.2 Java对象转JSON8.…

目录

  • 一、请求
  • 二、传递单个参数
  • 三、传递多个参数
  • 四、传递对象
  • 五、@RequestParam注解 后端参数重命名(后端参数映射)
  • 六、传递数组
  • 七、传递集合,@RequestParam
  • 八、传递JSON数据
    • 8.1 JSON字符串和Java对象互转
      • 8.1.1 @Test注解
      • 8.1.2 Java对象转JSON
      • 8.1.3 JSON转Java对象
    • 8.2 传递JSON
      • 8.3 后端实现

一、请求

访问不同的路径, 就是发送不同的请求. 在发送请求时, 可能会带⼀些参数, 所以学习Spring的请求,主要是学习如何传递参数到后端以及后端如何接收.
传递参数, 咱们主要是使⽤浏览器和Postman来模拟.

二、传递单个参数

接收单个参数, 在 Spring MVC 中直接⽤⽅法中的参数就可以

@RestController
@RequestMapping(value = "/user")
public class UserController {@RequestMapping(value = "/m1")public String m1(String request) {return  request;        }
}

使用浏览器访问:http://127.0.0.1:8080/user/m1?request=hello

使用Postman:

这两种都是键值对模型,其中的键要与方法的参数名一样。

注意事项:

  • 使⽤基本类型来接收参数时, 参数必须传(除boolean类型), 否则会报500错误, 类型不匹配时, 会报400错误.

三、传递多个参数

和接收单个参数⼀样, 直接使⽤⽅法的参数接收即可. 使⽤多个形参.

@RestController
@RequestMapping(value = "/user")
public class UserController {@RequestMapping(value = "/m3")public String m3(String s1, int a) {return s1+"参数:"+a;}
}

使用浏览器访问:http://127.0.0.1:8080/user/m3?s1=你好&a=100

使用Postman:

注意事项:

  • 这两种都是键值对模型,其中的键要与方法的参数名一样。
  • 参数的位置是不影响后端获取参数的结果.
  • 基本类型来接收参数时,一样有上述问题。

四、传递对象

如果参数⽐较多时, ⽅法声明就需要有很多形参. 并且后续每次新增⼀个参数, 也需要修改⽅法声明. 我们不妨把这些参数封装为⼀个对象.

实例:

public class Person {private int id;private String name;private String password;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}@Overridepublic String toString() {return "Person{" +"id=" + id +", name='" + name + '\'' +", password='" + password + '\'' +'}';}
}@RestController
@RequestMapping(value = "/user")
public class UserController {@RequestMapping(value = "/m4")public String m4(Person person){return person.toString();}
}    

注意事项:

  • 要传类中的成员名,不包含类对象名。
  • 由于类定义会给成员默认值,这里没有基本类型不传值报错问题。

五、@RequestParam注解 后端参数重命名(后端参数映射)

某些特殊的情况下,前端传递的参数 key 和我们后端接收的 key 可以不⼀致。
使用@RequestParam注解

实例:

@RestController
@RequestMapping(value = "/user")
public class UserController {@RequestMapping(value = "/m5")public String m5(@RequestParam(value = "s")String string) {return string;}
}

注意事项:

  • 使⽤ @RequestParam 进⾏参数重命名时, 请求参数只能和 @RequestParam 声明的名称⼀
    致, 才能进⾏参数绑定和赋值.
  • 使⽤ @RequestParam 进⾏参数重命名时, 参数就变成了必传参数.
  • 要将参数变成非必传参数,需要将required = false

六、传递数组

Spring MVC 可以⾃动绑定数组参数的赋值

实例:

@RestController
@RequestMapping(value = "/user")
public class UserController {@RequestMapping(value = "/m6")public String m6(String[] strings) {return Arrays.toString(strings);}
}

注意事项:

  • 使用Postman传参的时候,每个数组值通过逗号隔开。
  • 当需要传逗号作为值的时候,就需要传解码encode后的值。
  • 在使用浏览器URL访问时,也需要将非英文字母,全部encode。

七、传递集合,@RequestParam

集合参数:和数组类似, 同⼀个请求参数名有为多个, 且需要使⽤ @RequestParam 绑定参数关系

实例:

@RestController
@RequestMapping(value = "/user")
public class UserController {@RequestMapping(value = "/m7")public String m7(@RequestParam ArrayList<String> strings) {return  strings.toString();}
}

注意事项:

  • 与传递数组同

八、传递JSON数据

JSON就是⼀种数据格式, 有⾃⼰的格式和语法, 使⽤⽂本表⽰⼀个对象或数组的信息, 因此JSON本质是字符串. 主要负责在不同的语⾔中数据传递和交换.

JOSN语法:

  1. 数据在 键值对(Key-Value) 中
  2. 数据由逗号, 分隔
  3. 对象⽤ { } 表⽰
  4. 数组⽤ [ ] 表⽰
  5. 值可以为对象, 也可以为数组, 数组中可以包含多个对象
  6. 键key和值value之间通过冒号分割
  7. 键值对之间使用逗号分割

JSON优点

  1. 简单易⽤: 语法简单,易于理解和编写,可以快速地进⾏数据交换
  2. 跨平台⽀持: JSON可以被多种编程语⾔解析和⽣成, 可以在不同的平台和语⾔之间进⾏数据交换和
    传输
  3. 轻量级: 相较于XML格式, JSON数据格式更加轻量级, 传输数据时占⽤带宽较⼩, 可以提⾼数据传输
    速度
  4. 易于扩展: JSON的数据结构灵活,⽀持嵌套对象和数组等复杂的数据结构,便于扩展和使⽤
  5. 安全性: JSON数据格式是⼀种纯⽂本格式,不包含可执⾏代码, 不会执⾏恶意代码,因此具有较⾼
    的安全性

8.1 JSON字符串和Java对象互转

我们在这介绍使用Jackson方式转换,因为这个是Spring中集成了的,不用引入依赖。
还有fastjson,gson。

8.1.1 @Test注解

在我们写测试代码时我们在test这个包下面写。
我们可以直接写main方法,也可以使用@Test这个方法注解在测试方法前面加上,这个注解作用相当于为方法开一个线程。所以可以写多个被@Test修饰的方法同时运行。

8.1.2 Java对象转JSON

使用类ObjectMapper下面的writeValueAsString方法。类对象必须要有无参构造函数

步骤:

  • 创建ObjectMapper对象
  • 创建对象
  • 直接调用writeValueAsString 将对象转换为JSON
 @Test
void testObjectToJson() throws JsonProcessingException {ObjectMapper objectMapper = new ObjectMapper();//创建对象Person person = new Person();person.setId(1);person.setName("zhangsan");person.setPassword("111");//对象转JSONString j = objectMapper.writeValueAsString(person);System.out.println(j);}

8.1.3 JSON转Java对象

使用类ObjectMapper下面的readValue方法。

  • 创建ObjectMapper对象
  • 创建json
  • 直接调用readValue将json转换为对象
@Testvoid testJsonToObject() throws JsonProcessingException {ObjectMapper objectMapper = new ObjectMapper();//创建jsonString s = "{\"id\":1,\"name\":\"zhangsan\",\"password\":\"111\"}";//JSON转对象Person person = objectMapper.readValue(s,Person.class);System.out.println(person);}

8.2 传递JSON

8.3 后端实现

我们只需要在方法参数上加上@RequestBody这个注解。

RequestBody: 请求正⽂,意思是这个注解作⽤在请求正⽂的数据绑定,请求参数必须在写在请求正⽂中

@RequestMapping(value ="/j1")public String j1(@RequestBody Person person) {return person.toString();}

postman传参

http://www.hrbkazy.com/news/21823.html

相关文章:

  • 网站标题 关键字怎么设置代码搜索引擎优化好做吗
  • 九江 网站建设公司app推广注册赚钱
  • 如何做专业的模板下载网站百度站长工具链接提交
  • 松原建设工程交易中心网站做一个自己的网站
  • 有路由器做网站百度网站管理员工具
  • 网站开发的背景知识与相关技术登录注册入口
  • 邢台网站制作那家便宜什么是百度快照
  • wordpress 后台文章西安seo关键词查询
  • 深圳建网站信科seo搜索推广
  • 商店网站在线设计搜狗首页排名优化
  • 多语言网站建设中国新冠一共死去的人数
  • 乐从建网站网站点击率查询
  • 公司网站党风廉政建设专栏5118关键词查询工具
  • 高端模板网站建设公司百度搜索引擎的特点
  • 贵州 政府网站建设规范友链目录网
  • 自己做淘客网站成本大吗百度官方网页版
  • 做非法网站的有没有百度竞价被换着ip点击
  • 个人网站数据库怎么做百度资源搜索引擎
  • 开源网站建设工具seo的优化策略有哪些
  • 做寻亲网站的理由英文seo推广
  • 学生做兼职哪个网站企业官网怎么做
  • 网站页面多大公司网站建设服务机构
  • 西安网站手机网站建设朋友圈广告投放平台
  • unity可以做网站吗百度的链接
  • wordpress 页面 模板优化营商环境
  • 桥梁建设网站在哪里可以投稿关键词排名查询网站
  • 搭建网站教学网络热词排行榜
  • wordpress 前台登陆插件兰州快速seo整站优化招商
  • 东莞中企动力做网站谷歌网站优化推广
  • 阿里云搭建企业网站百度注册页面