spring-boot项目在外部tomcat环境下部署
2023-09-14 08:57:45 时间
spring-boot默认提供内嵌的tomcat,所以打包直接生成jar包,用java -jar命令就可以启动。但是,有时候我们更希望一个tomcat来管理多个项目,这种情况下就需要项目是war格式的包而不是jar格式的包。spring-boot同样提供了解决方案,只需要简单的几步更改就可以了,这里提供maven项目的解决方法:
1.将项目的启动类Application.java继承SpringBootServletInitializer并重写configure方法
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}
2.在pom.xml文件中,project下面增加package标签
<packaging>war</packaging>
3.还是在pom.xml文件中,dependencies下面添加
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
这样,只需要以上3步就可以打包成war包,并且部署到tomcat中了。需要注意的是这样部署的request url需要在端口后加上项目的名字才能正常访问。spring-boot更加强大的一点就是:即便项目是以上配置,依然可以用内嵌的tomcat来调试,启动命令和以前没变,还是:mvn spring-boot:run。
如果需要在springboot中加上request前缀,需要在application.properties中添加server.contextPath=/prefix/即可。其中prefix为前缀名。这个前缀会在war包中失效,取而代之的是war包名称,如果war包名称和prefix相同的话,那么调试环境和正式部署环境就是一个request地址了。
相关文章
- Tomcat 配置 项目 到tomcat目录外面 和 域名绑定访问(api接口、前端网站、后台管理网站)
- tomcat 启动日志乱码,idea中运行Tomcat也出现中文乱码:“淇℃伅”
- Spring Boot 中 Tomcat 是怎么启动的
- 使用JDBCTemplate实现与Spring结合,方法公用 ——Emp实现类(EmpDaoImpl)
- 20-spring学习-Spring MVC基本操作
- Spring异常解决 java.lang.NullPointerException,配置spring管理hibernate时出错
- Spring配置文件总结
- spring boot:多个filter/多个interceptor/多个aop时设置调用的先后顺序(spring boot 2.3.1)
- [Spring学习笔记 3 ] spring 注解详解,完全注解,常用注解
- spring boot:tomcat的accesslog按日期存放(spring boot v2.5.4)
- 使用外置tomcat部署spring boot程序需添加servlet-api
- spring boot使用外置tomcat部署需增加如下初始化类
- spring boot使用外置tomcat部署需要排除的依赖
- Netweaver的端口号和Spring boot内嵌的Tomcat端口
- Atitit spring注解事务的demo与代码说明 目录 1.1. Spring框架中,要如何实现事务?有一个注解,@EnableTransactionManagement1 1.2. 事务管理
- Atitit spring单元测试 注解 获取服务名 Spring文件单独放在一个文件夹,去掉dubbo配置,方便测试 里面包含的mybatis 找不到,只好设置成相对于class绝对路径可以了
- Spring Boot 之spring.factories
- Spring Mvc和Spring Boot配置Tomcat支持Https
- 005-spring-data-elasticsearch 3.0.0.0使用【三】-spring-data之Spring数据扩展
- Spring MVC内部资源视图解析器
- 【java】Spring Boot --spring boot项目整合xxl-job
- tomcat Context容器(中):Tomcat如何隔离Web应用?
- Tomcat 一文带你了解tomcat体系结构