配置嵌入式Servlet容器

配置嵌入式Servlet容器配置嵌入式 Servlet 容器 SpringBoot 默认是用嵌入式的 Servlet 容器 Tomcat 1 如何定制 Servlet 有关配置 ServletPrope server port 8080server context path web 通用的 Servlet 容器设置 server xxx Tomcat 的设置 server tomcat accept count 100 server tomcat xxx2 编写 WebServerFac

配置嵌入式Servlet容器

SpringBoot默认是用嵌入式的Servlet容器(Tomcat)

1.如何定制Servlet有关配置(ServletProperties):

server.port=8080 server.context-path=/web # 通用的Servlet容器设置 # server.xxx # Tomcat的设置 server.tomcat.accept-count=100 # server.tomcat.xxx 

2.编写WebServerFactoryCustomizer定制器。

 @Bean public WebServerFactoryCustomizer<ConfigurableWebServerFactory> webServerFactoryCustomizer(){ 
    return new WebServerFactoryCustomizer<ConfigurableWebServerFactory>() { 
    @Override public void customize(ConfigurableWebServerFactory factory) { 
    //配置服务端口 factory.setPort(8080); } }; } 

3.注册Servlet、Filter、Listener组件

编写相关组件

public class MyServlet extends HttpServlet { 
    @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 
    System.out.println("访问中"); resp.getWriter().write("成功"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 
    super.doPost(req, resp); } } 
public class MyFilter implements Filter { 
    @Override public void init(FilterConfig filterConfig) throws ServletException { 
    } @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { 
    System.out.println("拦截"); filterChain.doFilter(servletRequest,servletResponse); } @Override public void destroy() { 
    } } 
public class MyListener implements ServletContextListener { 
    @Override public void contextInitialized(ServletContextEvent sce) { 
    System.out.println("服务器启动"); } @Override public void contextDestroyed(ServletContextEvent sce) { 
    System.out.println("服务器关闭"); } } 

SpringBoot注册:

@Configuration public class MyServerConfig { 
    //注册三大组件 @Bean public ServletRegistrationBean myServlet(){ 
    ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(); servletRegistrationBean.setServlet(new MyServlet()); servletRegistrationBean.setUrlMappings(Arrays.asList("/myServlet")); servletRegistrationBean.setLoadOnStartup(1); return servletRegistrationBean; } @Bean public FilterRegistrationBean myFilter(){ 
    FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(); //添加Filter filterRegistrationBean.setFilter(new MyFilter()); //设置拦截路径 filterRegistrationBean.setUrlPatterns(Arrays.asList("/myServlet")); return filterRegistrationBean; } @Bean public ServletListenerRegistrationBean servletListenerRegistrationBean(){ 
    ServletListenerRegistrationBean<MyListener> servletListenerRegistrationBean = new ServletListenerRegistrationBean(); servletListenerRegistrationBean.setListener(new MyListener()); return servletListenerRegistrationBean; } } 

使用外置Servlet(Tomcat)

<dependency> <groupId>org.springframework.boot 
     groupId> <artifactId>spring-boot-starter-tomcat 
      artifactId> <scope>provided 
       scope>  
        dependency> 

启动类

public class ServletInitializer extends SpringBootServletInitializer { 
    @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { 
    return application.sources(SpringBoot启动类.class); } } 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/206550.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午3:26
下一篇 2026年3月19日 下午3:27


相关推荐

  • 【Redis】Redis配置文件详解

    【Redis】Redis配置文件详解一、存放位置linux下一定要养成备份配置文件的习惯。我是将配置文件拷贝至/myredis目录下进行操作的;二、Units单位这个在配置文件开始位置1.配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit;2.对大小写不敏感。三、INCLUDES1.和Struts2配置文件类似,可以通过includes包含,redis.c…

    2022年6月7日
    55
  • Hadoop、Yarn和vcpu资源的配置

    Hadoop、Yarn和vcpu资源的配置

    2022年3月13日
    68
  • 短信验证码的作用及安全性

    短信验证码的作用及安全性在每个人都可以参与编辑的Web2.0时代,人人都在使用和注册各种APP账号,而验证码短信就是必不可少的认证工具!所以,验证码短信逐步占据了短信行业中的重要份额。而短信验证码的作用是:1、作为身份凭证首先,验证码是商家给用户验证身份的一个凭证,通过手机短信发送验证码,是最普遍、最安全验证用户真实身份的方式。短信验证码广泛应用于用户注册、密码找回、登陆保护、身份认证、随机密码、交易确认等应用场景。2、…

    2022年7月14日
    24
  • pytorch BatchNorm参数详解,计算过程

    pytorch BatchNorm参数详解,计算过程BatchNorm1d的参数:torch.nn.BatchNorm1d(num_features,eps=1e-05,momentum=0.1,affine=True,track_running_stats=True)

    2022年5月24日
    102
  • html中怎样使表格居中,HTML中怎么让表格居中[通俗易懂]

    html中怎样使表格居中,HTML中怎么让表格居中[通俗易懂]回答:IE6/7及IE8混杂模式中,text-align:center可以使块级元素也居中对齐。其他浏览器中,text-align:center仅作用于行内内容上。解决这个问题比较好的方式,就是为所有需要相对父容器居中对齐的块级元素设置“margin-left:Auto;margin-right:Auto”。但这个方式IE6/IE7/IE8的混杂模式中不支持,所以还要设置父容器的”text…

    2025年12月3日
    4
  • 趣谈网络协议-应用层(P2P协议)

    趣谈网络协议-应用层(P2P协议)一 概述二 FTP 三 P2P1 概述 2 种子 torrent 文件 3 去中心化网络 4 哈希值 5 DHT 网络中的朋友圈是怎么维护的 6 DHT 网络是如何查找朋友的

    2026年3月26日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号