/** * 支付页面 */ @RequestMapping("/order/pay") public String pay( @RequestParam(value = "orderId") Long orderId, Model model) { if (getLoginUser() == null) {//用户未登录 return "redirect:/"; } //订单不存在 Order order = orderService.get(orderId); if (order == null) { return renderNotFond(); } //登录用户既不是该订单的租客,也不是房东或者管理员,就不能看 if (!Objects.equals(getLoginUserId(), order.getCustomerUserId()) && !Objects.equals(getLoginUserId(), order.getOwnerUserId()) && !loginUserIsAdmin()){ return renderNotAllowAccsee(); } House house = houseService.get(order.getHouseId()); if (house == null) { //房子不存在 return renderNotFond(); } //该订单的房子信息 order.setHouse(houseService.get(order.getHouseId())); model.addAttribute("order",order); return "front/pay"; }
时间: 2024-02-02 20:05:15 浏览: 18
这是一个 Java SpringMVC 框架的控制器方法,用于展示支付页面。该方法接收一个参数:orderId 表示订单的 ID。该方法返回一个视图名称,展示支付页面。
首先,该方法判断用户是否登录。如果用户未登录,则重定向到首页。接着,从 orderService 中获取 order 对象,如果该对象为空,则返回一个 404 页面。然后,判断当前登录用户是否为该订单的租客、房东或管理员,如果不是,则返回一个错误提示信息。
接下来,从 houseService 中获取 house 对象,如果该对象为空,则返回一个 404 页面。然后,设置该订单对应的房子信息,将订单对象添加到 Model 中,最后返回支付页面的视图名称。
相关问题
@requestmapping /**
@RequestMapping注解是Spring MVC框架中的一个注解,用于将HTTP请求映射到控制器的处理方法上。
在引用和引用中,@RequestMapping注解被用于指定处理请求的URL路径和请求方法。例如,@RequestMapping(value="/editItem", method=RequestMethod.GET)表示当收到GET请求且路径为"/editItem"时,会调用相应的处理方法。
引用提供了一些使用@RequestMapping注解的示例。在这些示例中,@RequestMapping注解用于指定处理请求的URL路径和请求方法。例如,@RequestMapping(value="/hello", method=RequestMethod.GET)表示当收到GET请求且路径为"/hello"时,会调用hello()方法。
此外,@RequestMapping注解还可以用于指定多个URL路径和多个请求方法,以及其他参数,例如请求的媒体类型等。
总结起来,@RequestMapping注解是用于将HTTP请求映射到控制器的处理方法上的注解。它通过指定URL路径和请求方法来匹配请求,并调用相应的处理方法来处理请求。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [@RequestMapping 用法详解](https://blog.csdn.net/weixin_40009737/article/details/80810918)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [RequestMapping 使用教程](https://blog.csdn.net/xsj_blog/article/details/83150755)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
*/ @RestController @RequestMapping("/lun") public class LunController {
这是一个使用 Spring 框架开发的 RESTful API 的控制器类。使用 @RestController 注解表示这是一个 RESTful API 接口控制器,使用 @RequestMapping("/lun") 注解表示映射到 URL 路径为 "/lun" 的请求。在该类中定义了各种处理请求的方法,可以使用不同的 HTTP 请求方法(如 GET、POST、PUT、DELETE 等)来访问这些方法,从而实现对资源的增删改查等操作。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)