问:有了springMVC,为什么还要用servlet?有了servlet3的注解,为什么还要使用ServletRegistrationBean注入的方式?

使用场景:在有些场景下,比如我们要使用hystrix-dashboard,这时候就需要注入HystrixMetricsStreamServlet(第三方的servlet),该servlet是hystrix的组件。
一、代码
1、TestServlet(第一个servlet)
package com.xxx.secondboot.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestServlet extends HttpServlet {
private static final long serialVersionUID = -4619665430596950563L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("zhaojigang servlet");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doGet(req, resp);
}
}
2、Testservlet2(第二个servlet)
package com.xxx.secondboot.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestServlet2 extends HttpServlet {
private static final long serialVersionUID = 3788279972938793265L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("zhaojigang servlet2");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doGet(req, resp);
}
}
3、ServletConfig(servlet注入配置类)
package com.xxx.secondboot.servlet;
import org.springframework.boot.context.embedded.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class ServletConfig {
@Bean
public TestServlet testServlet(){
return new TestServlet();
}
@Bean
public ServletRegistrationBean testServletRegistrationBean(TestServlet testServlet){
ServletRegistrationBean registration = new ServletRegistrationBean(testServlet);
registration.setEnabled(true);
registration.addUrlMappings("/servlet/test");
return registration;
}
/********************************************/
@Bean
public TestServlet2 testServlet2(){
return new TestServlet2();
}
@Bean
public ServletRegistrationBean test2ServletRegistrationBean(TestServlet2 testServlet2){
ServletRegistrationBean registration = new ServletRegistrationBean(testServlet2);
registration.setEnabled(true);
registration.addUrlMappings("/servlet/test2");
return registration;
}
}
说明:使用ServletRegistrationBean来注入servlet,对于每一个servlet都有一个ServletRegistrationBean来注入。
注意:如果只是自己要使用servlet,可以直接只用servlet3的注解来声明servlet就好,但是像HystrixMetricsStreamServlet这样的第三方servlet,就只能通过上边这样的方式来搞了。
二、测试
启动服务,浏览器输入"http://localhost:8083/servlet/test","http://localhost:8083/servlet/test2",查看console的输出。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# springboot注入servlet
# spring
# boot
# servlet
# servlet3
# SpringBoot初始教程之Servlet、Filter、Listener配置详解
# SpringBoot中使用Filter和Interceptor的示例代码
# springboot使用filter获取自定义请求头的实现代码
# springboot中filter的用法详解
# springBoot的事件机制GenericApplicationListener用法解析
# 详解springboot整合Listener的两种方式
# SpringBoot中使用Servlet三大组件的方法(Servlet、Filter、Listene
# 第三方
# 要使
# 都有
# 第一个
# 就好
# 第二个
# 要用
# 可以直接
# 搞了
# 大家多多
# 这时候
# Override
# HttpServlet
# HttpServletResponse
# HttpServletRequest
# javax
# IOException
# http
# ServletException
# long
相关文章:
简单实现Android文件上传
*服务器网站为何频现安全漏洞?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
制作国外网站的软件,国外有哪些比较优质的网站推荐?
如何高效利用200m空间完成建站?
西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?
如何通过宝塔面板实现本地网站访问?
h5网站制作工具有哪些,h5页面制作工具有哪些?
小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化
深圳 网站制作,深圳招聘网站哪个比较好一点啊?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
实惠建站价格推荐:2025年高性价比自助建站套餐解析
制作电商网页,电商供应链怎么做?
如何在腾讯云服务器上快速搭建个人网站?
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
专业网站设计制作公司,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何基于云服务器快速搭建网站及云盘系统?
图册素材网站设计制作软件,图册的导出方式有几种?
c# await 一个已经完成的Task会发生什么
香港服务器如何优化才能显著提升网站加载速度?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?
在线制作视频的网站有哪些,电脑如何制作视频短片?
如何在搬瓦工VPS快速搭建网站?
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
如何用PHP快速搭建CMS系统?
网站制作说明怎么写,简述网页设计的流程并说明原因?
如何快速搭建个人网站并优化SEO?
如何高效配置IIS服务器搭建网站?
活动邀请函制作网站有哪些,活动邀请函文案?
建站主机助手选型指南:2025年热门推荐与高效部署技巧
如何在云服务器上快速搭建个人网站?
linux top下的 minerd 木马清除方法
青岛网站建设如何选择本地服务器?
建站之星在线客服如何快速接入解答?
公司网站的制作公司,企业网站制作基本流程有哪些?
大同网页,大同瑞慈医院官网?
如何确保FTP站点访问权限与数据传输安全?
网站制作难吗安全吗,做一个网站需要多久时间?
网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?
javascript中的try catch异常捕获机制用法分析
如何在阿里云完成域名注册与建站?
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?
建站之星导航如何优化提升用户体验?
MySQL查询结果复制到新表的方法(更新、插入)
如何在阿里云虚拟主机上快速搭建个人网站?
东莞专业制作网站的公司,东莞大学生网的网址是什么?
*请认真填写需求信息,我们会在24小时内与您取得联系。