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

十大免费货源网站湖南怀化

十大免费货源网站,湖南怀化,苏州瑞熙网站建设,c 网站建设步骤目录 一、RequestParam 二、RequestBody 三、PathVariable 四、RequestHeader 五、RequestAttribute 六、RequestPart 七、Valid 一、RequestParam 1.作用 用于将请求中的 查询参数 或 表单参数 绑定到方法的参数上。支持 GET 和 POST 请求。 2.使用方法 GetMappin…

目录

一、@RequestParam

二、@RequestBody

三、@PathVariable

四、@RequestHeader

五、@RequestAttribute

六、@RequestPart

七、@Valid

一、@RequestParam

1.作用

  • 用于将请求中的 查询参数表单参数 绑定到方法的参数上。
  • 支持 GET 和 POST 请求。

2.使用方法

@GetMapping("/search")
public ResponseEntity<List<Item>> searchItems(@RequestParam(value = "keyword", required = false) String keyword,@RequestParam(value = "page", defaultValue = "1") int page) {// 业务逻辑
}

3.属性说明

  • valuename:参数名,对应请求中的参数键名,变量名与参数名相同时可省略。
  • required:是否为必需参数,默认值为 true。如果设置为 false,当参数缺失时,方法不会报错。
  • defaultValue:参数的默认值,当请求中未包含该参数时使用。

二、@RequestBody

1.作用

  • 用于将请求体中的 JSON 数据 绑定到方法的参数上。

  • 常用于处理 POST、PUT、PATCH 请求。

2.使用方法

@PostMapping("/users")
public ResponseEntity<User> createUser(@RequestBody User user) {// 业务逻辑
}

3.属性说明

  • required:是否为必需参数,默认值为 true。如果设置为 false,当请求体为空时,参数值为 null

三、@PathVariable

1.作用

  • 用于将 URL 路径中的变量 绑定到方法的参数上。
  • 常用于 RESTful 风格的接口。

2.使用方法

@GetMapping("/users/{id}")
public ResponseEntity<User> getUser(@PathVariable("id") Long id) {// 业务逻辑
}

3.属性说明

  • valuename:路径变量的名称,对应 {} 中的变量名。
  • required:是否为必需参数,默认值为 true

四、@RequestHeader

1.作用

  • 用于将 请求头信息 绑定到方法的参数上。

2.使用方法

@GetMapping("/profile")
public ResponseEntity<User> getProfile(@RequestHeader("Authorization") String token) {// 业务逻辑
}

3.属性说明

  • valuename:请求头的名称。
  • required:是否为必需参数,默认值为 true
  • defaultValue:当请求头缺失时的默认值。

五、@RequestAttribute

1.作用

  • 用于将 请求范围内的属性 绑定到方法的参数上。
  • 这些属性通常由拦截器或过滤器预先设置。

2.使用方法

@GetMapping("/order")
public ResponseEntity<Order> getOrder(@RequestAttribute("userId") Long userId) {// 业务逻辑
}

3.属性说明

  • valuename:属性的名称。
  • required:是否为必需参数,默认值为 true

4.示例

拦截器设置:

public class AuthInterceptor extends HandlerInterceptorAdapter {@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {Long userId = // 从请求中解析用户IDrequest.setAttribute("userId", userId);return true;}
}

六、@RequestPart

1.作用

  • 用于接收 multipart/form-data 请求中的特定部分,常用于文件上传。
  • @RequestParam 不同,@RequestPart 支持解析复杂的对象和文件。

2.使用方法

@PostMapping("/upload")
public ResponseEntity<?> uploadFile(@RequestPart("file") MultipartFile file,@RequestPart("description") String description) {// 业务逻辑
}

3.属性说明

  • valuename:请求部分的名称。
  • required:是否为必需参数,默认值为 true

七、@Valid

1.简介

作用:用于触发对参数对象的验证。

使用场景:与参数对象(如实体类、DTO)配合使用。

常用的验证注解包括:

  • @NotNull:字段不能为空
  • @NotEmpty:集合、字符串等不能为空
  • @NotBlank:字符串不能为空白字符
  • @Size:指定集合、数组、字符串的长度范围
  • @Min@Max:指定数值的最小值和最大值
  • @Email:邮箱格式验证
  • @Pattern:正则表达式匹配

2.使用方法

public class UserDTO {@NotBlank(message = "用户名不能为空")private String username;@Email(message = "邮箱格式不正确")private String email;@Size(min = 6, max = 20, message = "密码长度必须在6到20位之间")private String password;// Getters and Setters
}
@PostMapping("/register")
public ResponseEntity<?> register(@Valid @RequestBody UserDTO userDTO, BindingResult result) {if (result.hasErrors()) {// 处理验证错误String errorMessage = result.getAllErrors().get(0).getDefaultMessage();return ResponseEntity.badRequest().body(errorMessage);}// 业务逻辑
}

3.异常处理

BindingResult 接口:

  • 用于获取验证结果,必须紧跟在被 @Valid 注解的参数后面。
  • 可用于判断验证是否通过,获取错误信息。

全局异常处理:

可以使用 @ControllerAdvice@ExceptionHandler 注解,统一处理验证异常。

@RestControllerAdvice
public class GlobalExceptionHandler {@ExceptionHandler(MethodArgumentNotValidException.class)public ResponseEntity<?> handleValidationException(MethodArgumentNotValidException ex) {String errorMessage = ex.getBindingResult().getAllErrors().get(0).getDefaultMessage();return ResponseEntity.badRequest().body(errorMessage);}
}
http://www.yayakq.cn/news/323400/

相关文章:

  • 关于制作网站收费标准网站原型是什么
  • 虹口网站开发培训课程建站 seo课程
  • 腾讯云服务器怎么登录seo服务哪家好
  • 网站方案策划书18000字微电影网站源码
  • 视频付费点播网站怎么做拼多多网站首页
  • 美食网站页面设计源代码wordpress获取文章所有图片
  • 做电商网站外包奢侈品的网站设计
  • 网站开发需要考虑哪些方面wordpress免费模板带演示数据库
  • 建设广告网站费用wordpress 用户是否登陆
  • 潍坊网站定制网络工程师要考哪些证
  • 网站后台分模块wordpress淘客主题
  • 凯里官网品牌网站建设优化公司
  • 分销网站建设方案物联网工程是干什么的
  • 环球网最新新闻学校seo推广培训班
  • 企业网站翻译郑州专做喜宴的网站
  • 做eso哪家网站好为什么不能去外包公司
  • 排名好的网站建设网站站内优化方案
  • 模板网站建设教程php网站开发环境说明
  • 电商网站营销互联网推广培训机构
  • 图片做多的网站是哪个没有网站怎么做百度推广
  • 民治做网站的公司网站做的相似
  • 怎么样建设网站网站首页设计制作教程
  • 网站谁家做得好公司网站建设开发济南兴田德润优惠吗
  • 华为产品开发流程重庆seo教程
  • 现在外国有哪个网站可以做卖东西爱奇艺的网站是用什么做的
  • 那个网站做外贸最好建网站的公司
  • 影视怎么建设网站专业建站分销商城
  • 网站制作公司收费情况电商企业网站建设的一般要素有哪些
  • 自己做的网站怎么绑定域名安徽合肥
  • 西部数码的vps云主机如何访问网站输入网址一键生成app