路由派发的问题
来源:3-7 Controller层代码架子的搭建
![](http://img1.sycdn.imooc.com/user/578102720001d0f501000100-100-100.jpg)
无心铁憨憨
2020-02-25
翔仔老师你好,对于这个章节我有些疑问,在最后的视频中,我们通过if判断用户的请求路径及方法,并获取到的路径和方法分别调用不同的controller,但是这些路径都是我们自己建立的,所以我们代码中可以这样写,如果是提供给别人使用的话,是如何知道使用者到底需要调用的是哪个controller呢?
写回答
1回答
-
同学好,就和Spring一样,我们只是提供框架的基础服务,让用户遵循我们的规范来进行配置,因为只有用户才能知道他们业务上需要调用什么样的服务,所以他们得配置好。然后框架就会自动按照他们的配置进行路由。比如spring里面,可以看看我第一门课程有如下代码。
package com.imooc.o2o.web.frontend; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller @RequestMapping("/frontend") public class FrontendController { /** * 首页路由 * * @return */ @RequestMapping(value = "/index", method = RequestMethod.GET) private String index() { return "frontend/index"; } /** * 商品列表页路由 * * @return */ @RequestMapping(value = "/shoplist", method = RequestMethod.GET) private String showShopList() { return "frontend/shoplist"; } /** * 店铺详情页路由 * * @return */ @RequestMapping(value = "/shopdetail", method = RequestMethod.GET) private String showShopDetail() { return "frontend/shopdetail"; } /** * 商品详情页路由 * * @return */ @RequestMapping(value = "/productdetail", method = RequestMethod.GET) private String showProductDetail() { return "frontend/productdetail"; } }
这段代码就是用户引入spring框架后,通过注解设置上,针对不同请求路径,转发到特定的controller进行处理。所以我们管不了他们的业务,但是我们能协助他们完成业务:)
042020-02-26
相似问题