Spring筛选器仅在dev环境中



我有一个spring-boot应用程序,其中有一个定义如下的过滤器:

@Component
public class MyDevFilter extends GenericFilterBean {
@Override
public void doFilter(ServletRequest req, ServletResponse resp,
                     FilterChain chain) throws IOException,  ServletException {
.. filter implementation
}

我希望这个过滤器只在dev环境中注册,通过spring配置文件或jvm参数(不管是哪一个)。我怎样才能做到这一点?

只需在上面放一个@Profile("dev")注释,其名称与您的开发环境相对应(此处假定为"dev")。

然后,您可以在application.properties文件中使用激活它

spring.profiles.active=dev

或者,您可以在命令行中使用:

--spring.profiles.active=dev

@Profile("profile-name")注释您的bean,只有当该概要文件处于活动状态时才会创建它。

最新更新