springboot 使用第三方tomcat 运行
来源:互联网 发布:淘宝网怎么添加客服 编辑:程序博客网 时间:2024/06/10 11:17
将这个 spring Boot 项目的打包方式设置为 war。
<packaging>war</packaging>
去除內嵌tomcat
SpringBoot 默认有内嵌的 tomcat 模块,因此,我们要把这一部分排除掉。(注意不放在第三方tomcat不要去掉),可以先自测没问题,再去除,当然不去除在第三方tomcat下也可以运行
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 如果在使用自带tomcat请注释下面,如果使用第三方tomcat不要注释下面 --> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>
完整maven配置
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>springboot</groupId> <artifactId>springboot-test</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springboot-test</name> <packaging>war</packaging> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.3.RELEASE</version></parent><dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 如果在使用自带tomcat请注释下面,如果使用第三方tomcat不要注释下面 --> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency><dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>3.0-alpha-1</version></dependency> </dependencies> <build> <plugins> <!-- 如果要打成jar包并使用 java -jar **.jar运行,请不要注释spring-boot-maven-plugin --> <!-- <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <warName>springboot</warName> </configuration></plugin> </plugins> </build></project>
项目结构
springboot-test├── pom.xml├── src│ ├── main│ │ ├── index.jsp│ │ ├── java│ │ │ └── com│ │ │ └── lhy│ │ │ ├── controller│ │ │ │ └── SampleController.java│ │ │ └── init│ │ │ └── Application.java│ │ └── resources│ │ └── application.properties│ └── test│ ├── java│ └── resources├── target│ ├── classes│ ├── m2e-jee│ └── test-classes└── work └── Tomcat └── localhost └── aaa
注意,程序不要放在默认的default package 目录下,不然有可能会报错
main程序,Application.java
启动tomcat会自动找
提供一个 SpringBootServletInitializer
子类,并覆盖它的 configure
方法。我们可以把应用的主类改为继承SpringBootServletInitializer
。或者另外写一个类。
package com.lhy.init;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.builder.SpringApplicationBuilder;import org.springframework.boot.web.support.SpringBootServletInitializer;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;@SpringBootApplication@Configuration @ComponentScan(basePackages="com.lhy") //默认扫描是当前包下的路径@EnableAutoConfiguration 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); }}
controller 类SampleController.java
package com.lhy.controller;import org.springframework.stereotype.*;import org.springframework.web.bind.annotation.*;@Controllerpublic class SampleController { @RequestMapping("/") @ResponseBody String home() { return "Hello world"; }}
打包运行
注意:部署到 tomcat 以后,访问这个项目的时候,须要带上这个项目的 war 包名。
另外,我们还可以使用 war 插件来定义打包以后的 war 包名称,以免 maven 为我们默认地起了一个带版本号的 war 包名称。例如:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <warName>springboot</warName> </configuration></plugin>
把打包好的springboot.war 放在tomcat中,启动。
输入 localhost:8080/springboot
0 0
- springboot 使用第三方tomcat 运行
- 第三十三章 SpringBoot使用第三方配置文件
- tomcat 使用第三方机构ca证书
- SpringBoot 之 第三方Json解析框架FastJson的使用
- springboot使用第三方的json解析框架fastjson
- SpringBoot 加载第三方Jar包
- hadoop运行第三方jar
- hadoop运行第三方jar
- 使用第三方组件
- 使用第三方字体
- 使用第三方字体
- 使用第三方工具
- 使用第三方字体
- 第三方登陆使用
- 第三方皮肤使用
- 第三方控件使用
- MOB第三方使用
- springboot打包war,tomcat运行及常见问题
- Mock 和Stub之间的区别
- 如何动态生成Selector状态选择器
- Oracle事务(Transcations)的一致性
- fiddler使用记录
- pyhton正则表达式学习
- springboot 使用第三方tomcat 运行
- 【C/C++开发】C++实现简单的线程池
- ASP.NET Core MVC-WebAPi如何构建路由?
- dplyr包--数据操作与清洗
- 当直播遇上H5:高小姐要直播,二师兄也拦不住
- 开发注意事项
- linux线程进程学习
- Mybatis基于注解实现增删查改和多参数列表查询
- PAT甲级1024