• Spring Boot入门——tomcat配置


    1、通过配置文件配置

    server.port = 8080

    2、通过程序配置

    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.context.embedded.EmbeddedServletContainerFactory;
    import org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory;
    import org.springframework.context.annotation.Bean;
    
    /**
     * Hello world!
     *
     */
    @SpringBootApplication
    public class App{
        public static void main( String[] args )
        {
            System.out.println( "Hello World!" );
            SpringApplication.run(App.class, args);
        }
        
        /*
         *配置tomcat属性 
         */
        @Bean
        public EmbeddedServletContainerFactory servletContainer(){
            TomcatEmbeddedServletContainerFactory factory = new TomcatEmbeddedServletContainerFactory();
            factory.setPort(8089);  //设置访问端口号
            factory.setContextPath("/hello"); //设置访问主路径
            return factory;
        }
    }

    3、替换默认的tomcat容器

      a、默认是使用tomcat作为servlet的内嵌容器,首先得排除默认的tomcat,使用jetty容器

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            
            <!-- 排除使用的默认Tomcat -->
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        
        <!-- 添加jetty容器依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jetty</artifactId>
        </dependency>

      b、启动类中声明不使用默认的容器而是jetty容器

    @SpringBootApplication
    public class App{
        public static void main( String[] args )
        {
            System.out.println( "Hello World!" );
            SpringApplication.run(App.class, args);
        }
        
        /*
         *配置默认的tomcat属性 
         */
       /* @Bean
        public EmbeddedServletContainerFactory servletContainer(){
            TomcatEmbeddedServletContainerFactory factory = new TomcatEmbeddedServletContainerFactory();
            factory.setPort(8089);
            factory.setContextPath("/hello");
            return factory;
        }*/
        
        /*
         *配置默认的jetty属性 
         */
        @Bean
        public EmbeddedServletContainerFactory servletContainer(){
            JettyEmbeddedServletContainerFactory factory = new JettyEmbeddedServletContainerFactory();
            return factory;
        }
    }

      c、运行项目时一直出现版本不匹配问题,原因是由于Spring-boot1.5.3版本及以上使用jdk1.8,而我在之前的项目中使用1.7,版本不兼容导致。

    4、测试的时候不要排除spring-boot内嵌容器,在外部容器中部署项目时再加上以下代码

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            
            <!-- 排除使用的默认Tomcat -->
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
  • 相关阅读:
    获取本地地址,获取上传文件的后缀
    foreach
    es6入门
    jquery-ui 拖拽排序
    移动端常用
    vue父子组件通信
    Weinre(pc调试手机页面)
    Ztree的使用
    jquery on() 转
    c++ 基本使用
  • 原文地址:https://www.cnblogs.com/studyDetail/p/7009268.html
Copyright © 2020-2023  润新知