我有一个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,只有当该概要文件处于活动状态时才会创建它。