最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring Boot部署到Tomcat過程中遇到的問題匯總

 更新時間:2018年03月22日 11:29:40   作者:Big丶Fine  
這篇文章主要給大家分享了關(guān)于Spring Boot部署到Tomcat過程中遇到的一些問題,文中將解決的方法介紹非常詳細(xì),對同樣遇到這個問題的朋友具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

Spring Boot項目一般都是內(nèi)嵌tomcat或者jetty服務(wù)器運行,很少用war包部署到外部的服務(wù)容器,即使放到linux中,一般也是直接啟動Application類,但是有些時候我們需要部署到外部的服務(wù)器,這對于Spring Boot來說卻有點麻煩

下面就記錄下自己部署的第一個SpringBoot項目到Tomcat中遇到的問題,三個地方需要注意:頭疼……

詳細(xì)如下:

1、SpringBoot有自己內(nèi)置Tomcat容器,所以要告訴它不使用內(nèi)置容器,不指定Tomcat版本配置如下:

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

2、Application類需要如下改動,其中exclude是忽略數(shù)據(jù)庫的注解(我沒弄數(shù)據(jù)庫):

@SpringBootApplication(exclude = { 
DataSourceAutoConfiguration.class, 
DataSourceTransactionManagerAutoConfiguration.class, HibernateJpaAutoConfiguration.class}) 
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); 
 } 
} 

3、JDK版本要一直!我開始服務(wù)器用的jdk1.7,本地環(huán)境用的1.8,結(jié)果本地怎么調(diào)試運行都正常,服務(wù)器tomcat啟動正常,jsp訪問都正常,接口全部404,控制臺也沒有出現(xiàn)SpringBoot的標(biāo)示?。。。⊙芯苛艘徽臁^疼……

我的代碼:

pom.xml

<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/maven-v4_0_0.xsd"> 
 <modelVersion>4.0.0</modelVersion> 
 <artifactId>wechatServer</artifactId> 
 <packaging>war</packaging> 
 <url>http://maven.apache.org</url> 
 <!-- Inherit defaults from Spring Boot --> 
 <parent> 
 <groupId>org.springframework.boot</groupId> 
 <artifactId>spring-boot-starter-parent</artifactId> 
 <version>1.4.0.RELEASE</version> 
 </parent> 
 <properties> 
 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
 <java.version>1.8</java.version> 
 </properties> 
 <dependencies> 
 <dependency> 
<groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-starter-web</artifactId> 
  <!-- 排除內(nèi)置容器,排除內(nèi)置容器導(dǎo)出成war包可以讓外部容器運行spring-boot項目 --> 
 </dependency> 
 <dependency> 
<groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-starter-tomcat</artifactId> 
  <scope>provided</scope> 
 </dependency> 
 <dependency> 
  <groupId>javax.servlet</groupId> 
  <artifactId>javax.servlet-api</artifactId> 
 </dependency> 
 <dependency> 
  <groupId>mysql</groupId> 
  <artifactId>mysql-connector-java</artifactId> 
 </dependency> 
 <dependency> 
<groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-starter-jdbc</artifactId> 
 </dependency> 
 <dependency> 
  <groupId>dom4j</groupId> 
  <artifactId>dom4j</artifactId> 
  <version>1.6.1</version> 
 </dependency> 
 <dependency> 
<groupId>com.thoughtworks.xstream</groupId> 
  <artifactId>xstream</artifactId> 
  <version>1.4.10</version> 
 </dependency> 
 <dependency> 
<groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-devtools</artifactId> 
  <optional>true</optional><!-- optional=true,依賴不會傳遞,該項目依賴devtools;之后依賴myboot項目的項目如果想要使用devtools,需要重新引入 --> 
 </dependency> 
 </dependencies> 
 <!--修改打包設(shè)置 --> 
 <build> 
 <plugins> 
  <!-- <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> 
  <version>2.4</version> 
  <configuration> 
<encoding>${project.build.sourceEncoding}</encoding> 
   <skipTests>true</skipTests> 
   <!-- 打成war包時名子 --> 
   <warName>wechatServer</warName> 
   <!-- mave時啟用的main路徑(因為其他包里面測試時也加了main函數(shù)) --> 
   <mainClass>${start-class}</mainClass> 
   <skip>true</skip><!-- 跳過測試 --> 
<testFailureIgnore>true</testFailureIgnore> 
<failOnMissingWebXml>false</failOnMissingWebXml> 
  </configuration> 
  </plugin> 
 </plugins> 
 </build> 
</project> 

Application類:

package wechatService.app; 
import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; 
import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration; 
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration; 
import org.springframework.boot.builder.SpringApplicationBuilder; 
import org.springframework.boot.web.support.SpringBootServletInitializer; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RestController; 
@SpringBootApplication(exclude = { 
DataSourceAutoConfiguration.class, 
DataSourceTransactionManagerAutoConfiguration.class, HibernateJpaAutoConfiguration.class}) 
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); 
 } 
 } 

Hello請求:

@RestController 
@RequestMapping 
public class LoginController { 
 @RequestMapping("/hello/{myName}") 
 String index(@PathVariable String myName) { 
 return "Hello "+myName+"!!!"; 
 } 
} 

application.properties我這里只配置了端口,然而部署到tomcat以后這里就不起作用了:

server.port = 80 

我的目錄結(jié)構(gòu):

最后我的完整代碼:http://xiazai.jb51.net/201803/yuanma/wechatServer(jb51.net).rar

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

最新評論

瑞昌市| 黄石市| 天长市| 武功县| 寿宁县| 荣昌县| 花莲市| 洱源县| 丹阳市| 洪湖市| 长顺县| 彭水| 曲沃县| 忻城县| 和田县| 太和县| 颍上县| 南安市| 保康县| 建阳市| 卓资县| 新河县| 东乡族自治县| 玉林市| 尼勒克县| 女性| 健康| 临洮县| 饶平县| 祁门县| 同心县| 宜州市| 奉贤区| 景宁| 开平市| 宁波市| 邯郸市| 布拖县| 汨罗市| 运城市| 绥阳县|