SpringBoot如何注册Servlet、Filter、Listener
在Servlet 3.0之前都是使用web.xml文件进行配置,需要增加Servlet、Filter或者Listener都需要在web.xml增加相应的配置。Servlet 3.0之后可以使用注解进行配置Servlet、Filter或者Listener;springboot也提供了使用代码进行注册Servlet、Filter或者Listener。所以springboot有两种方式进行Servlet、Filter或者Listener配置。
方式一:使用注解
(1)注册Servlet
使用@WebServlet注册,需要在Servlet类上使用该注解即可,但是需要在@Configuration类中使用Spring Boot提供的注解@ServletComponentScan扫描注册相应的Servlet。
(2) 注册Filter
使用@WebFilter注册,需要在Filter类上使用该注解即可,但是需要在@Configuration类中使用Spring Boot提供的注解@ServletComponentScan扫描注册相应的Filter。
(3)注册Listener
使用@WebListener注册,需要在Filter类上使用该注解即可,但是需要在@Configuration类中使用Spring Boot提供的注解@ServletComponentScan扫描注册相应的Listener。
方式二:使用spring提供的方式
(1)注册Servlet
使用ServletRegistrationBean注册只需要在@Configuration类中加入类似以下的代码
@Bean public ServletRegistrationBean regServlet() { ServletRegistrationBean userServlet= new ServletRegistrationBean(); userServlet.addUrlMappings("/servlet"); userServlet.setServlet(new UserServlet()); return userServlet; }
(2) 注册Filter
使用FilterRegistrationBean注册Filter,只需要在@Configuration类中加入类似以下的代码:
@Bean public FilterRegistrationBean regFilter() { FilterRegistrationBean userFilter = new FilterRegistrationBean(); userFilter .addUrlPatterns("/*"); userFilter .setFilter(new UserFilter ()); return userFilter ; }
(3)注册Listener
使用ServletListenerRegistrationBean注册Listener只需要在@Configuration类中加入类似以下的代码:
@Bean public ServletListenerRegistrationBean<LoginSessionListener> regServletListener() { ServletListenerRegistrationBean<LoginSessionListener> loginSessionListener= new ServletListenerRegistrationBean<LoginSessionListener>(); loginSessionListener.setListener(new LoginSessionListener()); return loginSessionListener; }
本文作者: java乐园
本文来自云栖社区合作伙伴“JAVA乐园”,了解相关信息可以关注“JAVA乐园”
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
redis客户端
Java客户端(Jedis) 获取Jedis image.png maven依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>3.0.0</version> <type>jar</type> <scope>compile</scope> </dependency> Jedis直连 image.png image.png Jedis的基本使用 image.png image.png image.png Jedis的连接池如何使用 image.png image.png image.png image.png image.png python客户端(redis-py) 如何获取,客户端,登录redis官网点击菜单导航栏的Clients然后进行选择对应语言的客户端(推荐选择笑脸加*的) image.png redis-pya...
- 下一篇
笑中带泪的码农往事:入职三天被开,公司给100块叫我走人,有我惨?
本文由作者“假不理”发表于“编程无界”公众号,现重新整理发布,感谢作者的精彩分享。 1、引言 十月,金秋季节,本是丰收之时,却因为陆续有同事离职,心中多少有些悲凉之意,顿然想起从参加工作到现在。至今五年已过,当年青涩懵懂的小年轻,如今出街招摇过市时,被小孩子看到都会喊声大叔。 回想这五年,有心酸和无奈、有快乐和期待、也有不断的蜕变和成长。趁着国庆长假,写下这一路的心路历程,于己,是一个总结和督促,于读者,是一个故事,兼听则明,希望对你们有些许启发,足矣。 本文内容是据笔者的亲身经历和体会写就,虽然我比任何人都希望它只是些段子,但偏偏都是真事。一念之下发此文,不为名不为利,只愿与君共勉! (本文同步发布于:http://www.52im.net/thread-2030-1-1.html) 2、毕业=失业?有可能的 2013年6月底,虽然此前早已被某软(国内最大的软件开发商)的政府事业部录用并被寄以厚望要培养成核心人员,但出于对乡土的眷恋和对南方的热爱,还没领到毕业证的我,怀着极大的憧憬,拖着一个行李箱,兜里怀揣着几百块钱,坐了三十多个小时的绿皮从山东回到广州。 “初来乍到,请多多指教”,...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS关闭SELinux安全模块
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2整合Redis,开启缓存,提高访问速度