SpringBoot如何取消内置Tomcat启动并改用外接Tomcat
这篇文章主要介绍了SpringBoot如何取消内置Tomcat启动并改用外接Tomcat,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1,修改pom.xml
<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> <!--添加servlet的依赖--> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency>
2,将打包方式设置成war
<packaging>war</packaging>
3,修改springboot启动类,注释原有代码,添加以下代码
public static void main(String[] args) { SpringApplication.run(Application.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(this.getClass()); }
4,添加Tomcat容器,运行
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的启动教程详解
StandardEngine[Tomcat].StandardHost[localhost]的启动与StandardEngine不在同一个线程中,它的start: // Start our child containers, if any Container children[] = findChildren(); List<Future<Void>> results = new ArrayList<>(); for (int i = 0; i < childre
-
SpringBoot Tomcat启动实例代码详解
废话不多了,具体内容如下所示: Application configuration class: @SpringBootApplication public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return appli
-
Spring Boot启动过程(四)之Spring Boot内嵌Tomcat启动
之前在Spring Boot启动过程(二)提到过createEmbeddedServletContainer创建了内嵌的Servlet容器,我用的是默认的Tomcat. private void createEmbeddedServletContainer() { EmbeddedServletContainer localContainer = this.embeddedServletContainer; ServletContext localServletContext = getServ
-
Spring Boot启动过程(五)之Springboot内嵌Tomcat对象的start教程详解
标题和Spring Boot启动过程(四)之Spring Boot内嵌Tomcat启动很像,所以特别强调一下,这个是Tomcat对象的. 从TomcatEmbeddedServletContainer的this.tomcat.start()开始,主要是利用LifecycleBase对这一套容器(engine,host,context及wrapper)进行启动并发布诸如configure_start.before_init.after_start的lifecycleEvent事件给相应的监听器(如
-
spring boot项目打包成war在tomcat运行的全步骤
前言 使用maven创建的springboot项目,默认是jar包,springboot还有自己带的tomcat.现在需要将项目打包,并部署到服务器tomcat下面. 下面就让我们来一起把spring-boot项目按照平常的web项目一样发布到tomcat容器下,下面话不多说了,来一起看看详细的介绍吧 一.修改打包形式 在pom.xml里设置 <packaging>war</packaging> 二.移除嵌入式tomcat插件 在pom.xml里找到spring-boot-star
-
SpringBoot中如何启动Tomcat流程
前面在一篇文章中介绍了 Spring 中的一些重要的 context.有一些在此文中提到的 context,可以参看上篇文章. SpringBoot 项目之所以部署简单,其很大一部分原因就是因为不用自己折腾 Tomcat 相关配置,因为其本身内置了各种 Servlet 容器.一直好奇: SpringBoot 是怎么通过简单运行一个 main 函数,就能将容器启动起来,并将自身部署到其上 .此文想梳理清楚这个问题. 我们从SpringBoot的启动入口中分析: Context 创建 // Crea
-
SpringBoot应用War包形式部署到外部Tomcat的方法
这一篇文章介绍SpringBoot应用修改默认打jar形式部署为打war包形式,部署到外部Tomcat. SpringBoot应用默认打包成为可执行jar模式让我们感觉到部署的便捷,接下来给大家介绍一下SpringBoot项目打War包形式部署到外部Tomcat. 修改原有项目 1.修改项目 打开项目,修改pom文件: 1.项目中加入spring-boot-starter-web(如果是已经加入该依赖的项目可以忽略)和spring-boot-starter-tomcat依赖. 2.packagi
-
SpringBoot应用部署到Tomcat中无法启动的解决方法
背景 最近公司在做一些内部的小型Web应用时, 为了提高开发效率决定使用SpringBoot, 这货自带Servlet容器, 你在开发Web应用时可以直接在本地像运行控制台应用一样启动,省去了重复部署的时间:配置上相比于SpringMVC也是有了大大的简化.SpringBoot的应用可以直接打成一个可运行的jar包, 你无需发愁为了不同应用要部署多个Tomcat.但是实际部署时你会发现打成Jar包的方式有一个致命的缺点, 当你改动了一个资源文件.或者一个类时, 打要往服务器重新上传全量jar包.
-
SpringBoot如何取消内置Tomcat启动并改用外接Tomcat
这篇文章主要介绍了SpringBoot如何取消内置Tomcat启动并改用外接Tomcat,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1,修改pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 去除内嵌t
-
详解springboot+mybatis-plue实现内置的CRUD使用详情
mybatis-plus的特性 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD操作:内置通用 Mapper.通用Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求 支持 Lambda形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错 支持主键自动生成:支持多达 4种主键策略(内含分布式唯一 ID 生成器
-
springboot+mybatis-plus实现内置的CRUD使用详解
springboot+mybatis-plus实现内置的CRUD使用详情,具体修改删除操作内容后文也有详细说明 mybatis-plus的特性 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD操作:内置通用 Mapper.通用Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求 支持 Lambda形式调用:通过 Lambda 表达式,方
-
springboot使用外置tomcat启动方式
目录 使用外置tomcat启动 使用外置的tomcat启动注意事项 使用外置tomcat启动 打开pom文件,把打包格式设置为war <packaging>war</packaging> SpringBoot默认有内置的tomcat运行模块,可以在Application(继承SpringBootServletInitializer)中直接main启动. 如下配置可在外置tomcat容器中运行 <dependency> <groupId>org.springf
-
springboot项目中实现访问druid内置监控页面
springboot 访问druid内置监控页面 1.首先加入druid依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.9</version> </dependency> 2.设置配置文件: # 数据库访问配置 # 主数据源,默认的 spr
-
SpringBoot内置tomcat启动原理详解
前言 不得不说SpringBoot的开发者是在为大众程序猿谋福利,把大家都惯成了懒汉,xml不配置了,连tomcat也懒的配置了,典型的一键启动系统,那么tomcat在springboot是怎么启动的呢? 内置tomcat 开发阶段对我们来说使用内置的tomcat是非常够用了,当然也可以使用jetty. <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-bo
-
传统tomcat启动服务与springboot启动内置tomcat服务的区别(推荐)
spring整合springmvc spring整合springmvc中web.xml配置如下,tomcat在启动过程中会加载web.xml中的内容,ContextLoaderListener实现了tomcat里面的ServletContextListener接口,所以在tomcat容器启动过程通过ContextLoaderListener来进行spring容器的初始化操作,并将classpath:spring/applicationContext-*.xml指定下的spring配置文件加载,该
-
SpringBoot应用启动内置Tomcat的过程源码分析
Connector启动过程 Connector是Tomcat提供的类. // 通过此 Connector 开始处理请求 @Override protected void startInternal() throws LifecycleException { // Validate settings before starting if (getPortWithOffset() < 0) { throw new LifecycleException(sm.getString( "coyote
-
浅谈springboot内置tomcat和外部独立部署tomcat的区别
前两天,我去面了个试,面试官问了我个问题,独立部署的tomcat跟springboot内置的tomcat有什么区别,为什么存在要禁掉springboot的tomcat然后将项目部署到独立的tomcat当中? 我就想,不都一个样?独立部署的tomcat可以配置优化?禁AJP,开多线程,开nio?而且springboot内置的tomcat多方便,部署上服务器写个java脚本运行即可.现在考虑下有什么条件能优于内置tomcat的. 1.tomcat的优化配置多线程?内置的也可以配置多线程 server
-
springboot内置tomcat之NIO处理流程一览
目录 前言 tomcat组件 Acceptor组件 Poller 总结 大致流程为 相较于BIO模型的tomcat,NIO的优势分析 前言 springboot内置的tomcat目前默认是基于NIO来实现的,本文介绍下tomcat接受请求的一些组件及组件之间的关联 tomcat组件 本文只介绍NIO中tomcat的组件 我们直接看NIO的核心类NioEndpoint的startInternal方法 Acceptor组件 public void startInternal() throws Exc
随机推荐
- java如何创建一个jdbc程序详解
- python实现的DES加密算法和3DES加密算法实例
- javascript 中Cookie读、写与删除操作
- thinkPHP模板中for循环与switch语句用法示例
- php中mt_rand()随机数函数用法
- 浅谈php错误提示及查错方法
- ASP应用之模板采用
- 常用的JavaScript验证正则表达式汇总
- 下拉菜单的级联操作(ajax)
- Android自定义实现BaseAdapter的普通实现
- mysql锁定单个表的方法
- Android中实现布局背景模糊化处理的方法
- mysq GBKl乱码
- 基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
- android自定义ImageView仿图片上传示例
- Android开发获取重力加速度和磁场强度的方法
- Java中使用LocalDate根据日期来计算年龄的实现方法
- vue cli使用绝对路径引用图片问题的解决
- Node.js + express实现上传大文件的方法分析【图片、文本文件】
- Vue实现web分页组件详解