gpt4 book ai didi

spring-mvc - 是否可以在 Spring MVC 中动态设置 RequestMappings?

转载 作者:行者123 更新时间:2023-12-03 14:01:08 25 4
gpt4 key购买 nike

我已经使用 Spring MVC 三个月了。我正在考虑一种动态添加 RequestMapping 的好方法。这是因为需要将 Controller 部件放入库中,然后动态添加它们。无论如何,我能想到的唯一方法是声明一个这样的 Controller :

@Controller
@RequestMapping("/mypage")
public class MyController {

@RequestMapping(method = RequestMethod.GET)
public ModelAndView mainHandler(HttpServletRequest req) {
return handleTheRest(req);
}

}

这不好,因为基本上我没有使用 Spring。然后我不能使用表单绑定(bind)、注释等。我想将 requestMappings 动态添加到可以像通常的 MVC Controller 一样使用自动绑定(bind)进行注释的类的方法中,这样我就可以避免手动处理 HttpServletRequest。

有任何想法吗?
}

最佳答案

Spring MVC 使用 HandlerMapping 的实现来执行 URL 映射。界面。通常开箱即用的是默认实现,即 SimpleUrlHandlerMapping , BeanNameUrlHandlerMappingDefaultAnnotationHandlerMapping .

如果您想实现自己的映射机制,这很容易做到 - 只需实现该接口(interface)(或者,也许更可能,扩展 AbstractUrlHandlerMapping ),在您的上下文中将类声明为 bean,它将被DispatcherServlet当需要映射请求时。

请注意,您可以拥有多个 HandlerMapping在一种情况下您喜欢的实现。他们将被轮流咨询,直到其中一个有匹配。

关于spring-mvc - 是否可以在 Spring MVC 中动态设置 RequestMappings?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5758504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com