苍穹外卖中使用@RequestParam接收多个参数

批量删除套餐:参数处理与MVC中的@RequestParam,
本文讲述了作者在编写Day04内容时遇到的问题,即如何根据前端传来的id列表批量删除套餐。他们回忆起使用@RequestParam自动将前端传入的`ids=1,2,3...`转换为List,这是MVC架构中的一种常见做法。

最近在写day04的内容,遇到根据id批量删除套餐,忘记了怎么接受参数

前端返回的参数例子?ids=1,2,3...

接收方式:

加上@RequestParam自动转换成List,听老师说这是MVC实现的

下次不要再忘了

苍穹外卖项目(基于Spring框架)中,`@GetMapping` 注解是Spring MVC提供的一个用于处理HTTP GET请求的注解。以下是其具体作用: ### 映射HTTP GET请求 `@GetMapping` 注解用于将HTTP GET请求映射到特定的处理方法上。在苍穹外卖项目中,当客户端发起一个GET请求到指定的URL时,Spring MVC会根据 `@GetMapping` 注解的配置,将请求路由到对应的控制器方法进行处理。 示例代码如下: ```java import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class ExampleController { @GetMapping("/example") public String handleGetRequest() { return "This is a response for a GET request."; } } ``` 在上述代码中,当客户端发送一个GET请求到 `/example` 路径时,`handleGetRequest` 方法会被调用,并返回一个字符串响应。 ### 简化开发 `@GetMapping` 是 `@RequestMapping(method = RequestMethod.GET)` 的快捷方式,使用 `@GetMapping` 可以使代码更加简洁易读。在苍穹外卖项目中,开发人员可以更方便地定义处理GET请求的接口,提高开发效率。 ### 支持路径变量和请求参数 `@GetMapping` 注解可以与路径变量和请求参数一起使用,以处理不同的请求场景。在苍穹外卖项目中,这有助于实现灵活的接口设计。 示例代码如下: ```java import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class ExampleController { @GetMapping("/users/{id}") public String getUserById(@PathVariable("id") Long id) { return "User ID: " + id; } @GetMapping("/search") public String searchUsers(@RequestParam("keyword") String keyword) { return "Search keyword: " + keyword; } } ``` 在上述代码中,`getUserById` 方法通过路径变量获取用户ID,`searchUsers` 方法通过请求参数获取搜索关键字。 ### 支持RESTful风格的API设计 在苍穹外卖项目中,RESTful风格的API设计是常见的做法。`@GetMapping` 注解有助于实现RESTful API的GET操作,使得接口的语义更加清晰。例如,获取某个资源的详细信息、获取资源列表等操作通常使用GET请求。 ### 示例代码 ```java import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.List; @RestController public class DishController { // 获取所有菜品列表 @GetMapping("/dishes") public List<String> getAllDishes() { List<String> dishes = new ArrayList<>(); dishes.add("宫保鸡丁"); dishes.add("鱼香肉丝"); return dishes; } // 根据ID获取单个菜品信息 @GetMapping("/dishes/{id}") public String getDishById(@PathVariable("id") Long id) { return "菜品ID: " + id + " 的详细信息"; } } ``` 在这个示例中,`getAllDishes` 方法处理获取所有菜品列表的GET请求,`getDishById` 方法处理根据菜品ID获取单个菜品信息的GET请求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值