2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

spring boot 項目部署到服務(wù)器 兩種方式

 liang1234_ 2019-08-19

Spring Boot 兩種部署到服務(wù)器的方式


jar包(官方推薦)

jar包方式啟動,也就是使用spring boot內(nèi)置的tomcat運(yùn)行。服務(wù)器上面只要你配置了jdk1.8及以上,就ok。不需要外置tomcat
1.打成jar包

2.將jar包放到任意目錄,執(zhí)行下面的命令

$ nohup java -jar test.jar >temp.txt &

//這種方法會把日志文件輸入到你指定的文件中,沒有則會自動創(chuàng)建。進(jìn)程會在后臺運(yùn)行。

這里寫圖片描述
ps:Linux jar包運(yùn)行命令詳細(xì)說明,請查看這篇博客:Linux后臺運(yùn)行Jar方法
3.阿里云服務(wù)器需要放開對應(yīng)的端口
添加安全組:我的項目中配置的啟動端口是18080,故這里需要放開18080端口,才能訪問
這里寫圖片描述

4.訪問swagger
訪問格式:服務(wù)器ip:啟動端口/swagger-ui.html
如:http://59.110.155.32:18080/swagger-ui.html
這里寫圖片描述
我的項目配置:
這里寫圖片描述

=======================
我們再看看進(jìn)程:
執(zhí)行jps,如下圖,我們可以看到j(luò)ar 進(jìn)程有兩個,原因是我這里使用java -jar 啟動了兩個項目。
這里寫圖片描述

war包

傳統(tǒng)的部署方式:將項目打成war包,放入tomcat 的webapps目錄下面,啟動tomcat,即可訪問。

開發(fā)環(huán)境:jdk1.8 + IDEA

下面搭建一個demo演示如何打war包部署并且如何訪問:spring boot + maven,(下面我講的有點(diǎn)啰嗦,用了很多截圖,主要目的是照顧跟我一樣的小白同學(xué)~~愿世界和平?。?
1.新建spring boot + maven 項目(簡單貼兩張圖)
這里寫圖片描述
這里寫圖片描述
這里我們默認(rèn)打成jar包,不用修改。

2.項目新建完成后,修改啟動Application文件繼承SpringBootServletInitializer,實現(xiàn)configure方法
這里寫圖片描述

package com.example.demo1;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class Demo1Application extends SpringBootServletInitializer {

    // 用來測試訪問
    @RequestMapping("/")
    public String home() {
        return "hello 朋友";
    }

    public static void main(String[] args) {
        SpringApplication.run(Demo1Application.class, args);
    }

    // 繼承SpringBootServletInitializer 實現(xiàn)configure 方便打war 外部服務(wù)器部署。
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Demo1Application.class);
    }
}

3.修改pom.xml

<packaging>war</packaging>

完整pom.xml代碼如下

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven./POM/4.0.0" xmlns:xsi="http://www./2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven./POM/4.0.0 http://maven./xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>demo1</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <!-- 這里打成war包 若打jar,需將war改為jar -->
    <packaging>war</packaging>

    <name>demo1</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <finalName>demo1</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>


</project>

4.打包
這里可以直接到項目根目錄下面:運(yùn)行 maven package命令,打包。
我這里直接使用idea打包,如下圖:
這里寫圖片描述

5.將war放入外部tomcat的webapps目錄下
這里寫圖片描述

6.啟動tomcat
這里寫圖片描述

會彈出一個黑框,你會看到項目啟動,啟動完成后,直接訪問:localhost:8080/demo1(即:ip:端口/項目名稱,這里的端口是外部tomcat配置的端口,項目名稱是war包得名稱),瀏覽器輸出“hello 朋友”,表示運(yùn)行成功!
這里寫圖片描述

一定注意 :我這里訪問的端口是8080,也就是外部tomcat設(shè)置的端口。而不是項目,
application.yml中配置的server.port。

小結(jié)

1.對比兩種打包方式,jar更加簡單,方便。具體使用哪種方式,應(yīng)視應(yīng)用場景而定。
2.再說一次,將項目打成war包,部署到外部的tomcat中,這個時候,不能直接訪問spring boot 項目中配置文件配置的端口。application.yml中配置的server.port配置的是spring boot內(nèi)置的tomcat的端口號, 打成war包部署在獨(dú)立的tomcat上之后, 你配置的server.port是不起作用的。一定要注意這一點(diǎn)?。?
其實我們從tomcat的啟動界面,已經(jīng)可以看出,是啟動的哪個端口:
這里寫圖片描述
很明顯,日志告訴我們,我們應(yīng)該訪問8080端口。
下圖是使用spring boot 內(nèi)置tomcat啟動日志,可以看出配置的server.port是生效了的!
這里寫圖片描述

3.ok,如果你用的spring boot + gradle?;疽粯?。。這里就不詳細(xì)說了

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多