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

安化网站建设小米官网网站建设

安化网站建设,小米官网网站建设,黑马程序员视频,如何网站建设策划方案一、传递方式 1、查询参数&路径参数 查询参数&#xff1a; URI:/teachers?typeweb GetMapping("/klasses/teachers") public List<Teacher> getKlassRelatedTeachers(String type ) { ... }如果查询参数type与方法的名称相同&#xff0c;则直接将web传入…

一、传递方式

1、查询参数&路径参数

查询参数: URI:/teachers?type=web


@GetMapping("/klasses/teachers")
public List<Teacher> getKlassRelatedTeachers(String type ) {
...
}

如果查询参数type与方法的名称相同,则直接将web传入type参数。如果不同则使用@RequestParma注解指定名称。@RequestParma注解使用方法自行百度。如果没有传入相应的参数的话,那么框架会把该形参设置为默认值。

注意!!! 如果在参数上加入了@RequestParam注解的话,并且没有指定它的required属性为false(required默认为true代表必须提供该参数),如果前端没有传递该参数的话会报错!!

路径参数:

/klasses/{klassId}

@PathVariable用于获取路径参数

@GetMapping("/klasses/{klassId}/teachers")
public List<Teacher> getKlassRelatedTeachers(@PathVariable("klassId") Long klassId,@RequestParam(value = "type", required = false) String type ) {
...
}


 

2、请求体

参数映射规则

  1. 基本类型和包装类型
    • 当查询参数是基本类型(如int、double、boolean等)或其对应的包装类型时,SpringMVC框架会尝试将字符串形式的查询参数自动转换为相应的类型。
  1. 日期和时间类型
    • 如果方法参数是一个java.util.Date或者Java 8引入的java.time包中的日期/时间类,Spring MVC可以通过@DateTimeFormat注解指定日期时间格式,并据此解析查询参数。
  1. 数组和集合
    • 通过逗号分隔的查询参数可以被转换为数组或List类型的参数。例/api/setmeal?ids=1,2,3,4
    • 若前端传递的是多个同名查询参数,如?ids=1&ids=2&ids=3,也会自动收集到一个数组或List中。
  1. 自定义对象
    • 对于复杂类型,如自定义对象,可以通过@ModelAttribute或@RequestBody注解结合Jackson库(JSON序列化/反序列化库)进行绑定和转换。

查询参数也可以使用一个实体类型接收,但是要注意以下情况:

GET请求中使用实体类来接收所有可能的参数,并且有以下两种情况:

  1. json未传入实体类中存在的属性: 如果实体类中有某些属性在请求中没有对应的参数,那么在默认情况下,这些属性的值将会是它们的默认值(例如基本类型为0或null,对象引用为null)。实体类中的字段如果没有提供默认值,也不会自动填充,将在控制器方法中保持null状态。
  2. 实体类中不存在json请求传入的参数: 对于GET请求而言,如果请求包含了实体类中没有定义的参数,Spring MVC在处理这些参数时会忽略它们,不会引发错误,除非你配置了严格的模式来检查未知的请求参数。

GET请求参数通常是通过查询参数(query parameters)的形式附加在URL后,或者作为路径变量(path variables)嵌入在URI路径中。而POST、PUT等请求通常会使用@RequestBody注解结合JSON数据将请求体映射到一个实体类。

使用@RequestBody注解声明的形参,如果传入的JSON数据中没有对应的属性:

  • 默认情况下,Spring MVC会尝试将接收到的所有JSON数据映射到该形参对应的Java对象上。如果没有包含与Java对象属性相对应的JSON字段,则该Java对象中对应属性的值将会是它们的默认值(如基本类型为0或null,对象引用为null)。也就是说,如果没有传入该形参的属性,不会直接导致错误,但未传入的属性在Java对象中将保持未初始化状态
  • 对于传入了额外的、形参没有的属性:如果传入的JSON数据包含了一些在Java对象中不存在的属性,Jackson等JSON库在默认情况下会忽略这些额外的属性,不会直接引发错误。除非你配置了严格的JSON解析模式(例如启用DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES),在这种严格模式下,未知属性会导致反序列化失败并抛出异常。
http://www.yayakq.cn/news/776922/

相关文章:

  • 一二三四免费观看视频青岛seo
  • 网站代码组件广州站图片
  • 嘉定网站网站建设去施工网
  • 广安做网站公司学校网站建设调研报告
  • 淮安公司做网站网站短信通知
  • 手机网站下拉刷新做调查赚钱的网站
  • 网站建设和程序开发哪个好新乡哪有网站建设公司
  • 扬州开发区建设局网站台州百度网站排名
  • 东莞广告公司东莞网站建设wordpress 网校
  • 做网站什么数据库用的多wordpress伪静态iis7
  • 网站建站哪个好打开edge是2345网址导航
  • 五力合一营销型网站建设系统wordpress 浏览器上显示错位
  • 网站开发公司的职责建设网站招聘
  • 如何创建网站后台外国人做家具的网站
  • 建设资讯网站wordpress 插件 您没有足够的权限访问该页面
  • 智能建站收费标准南昌建网站那家好
  • wordpress社团网站南宁高端网站建设公司
  • 做网站设计制作公司网上营销渠道的功能
  • 免费的网站平台有哪些河南网站定制
  • 如何修改网站后台代码红灰搭配网站模板
  • 宜春网站建设公司联系方式怎么进入公司网站
  • 前端做网站框架怎么做棋牌网站
  • 建设网站呼叫中心有什么好处房地产网站素材
  • 西安网站建设全包建站公司用哪家服务器
  • 最简单网站建设佛山企业网站开发
  • 商城类网站和o2o网站建站工具包
  • 免费做淘宝联盟网站新浪的网络营销方式
  • 京东如何进行网站建设青岛公司网站建设开发
  • 设计logo网站免费下载云南企业建站
  • 公司网站建设怎么入账浙江省建设监理协会管网站