有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java以编程方式允许@RequestMapping

我有一个带有@RequestMapping的控制器,但我只想在满足某些条件时启用此控制器映射(例如,某些数据库值或其他应用程序条件允许)。是否可以通过一些简单的方法来激活/停用整个@RequestMapping,例如,基于从mappingControllerSpringbean检查一些方法,如isMapppingAllowed()?当上下文已经加载时,是否可以在运行时激活/停用


共 (3) 个答案

  1. # 1 楼答案

    我认为您可以编写拦截器或过滤器,因为在这两种情况下,您都可以获取请求对象,因此您可以检查URL,并相应地应用映射规则

  2. # 2 楼答案

    不完全是这样,如果你想让你的控制器在某些条件下不做任何lógic在其内部工作的事情,那么在你加载页面时,你宁愿看到404还是一个详细的错误

  3. # 3 楼答案

    你可以做两件事中的一件,第二件是更直接地回答你的问题

    1)处理请求,获取需要检查是否允许的数据,然后在控制器代码中继续处理/拒绝请求,并根据需要重定向

    2)添加一个自定义筛选器,或者如果出于身份验证目的,可以查看spring安全性