国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【java】Java項目從開發(fā)到部署生產(chǎn)完整流程梳理

這篇具有很好參考價值的文章主要介紹了【java】Java項目從開發(fā)到部署生產(chǎn)完整流程梳理。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

從事Java開發(fā)許久,從最初學(xué)習(xí)的JDK環(huán)境變量開始,到如今開發(fā)部署發(fā)布,已經(jīng)逐漸形成了自己的一套體系,當(dāng)然,其中也不少學(xué)習(xí)了網(wǎng)上各種資料總結(jié),接下來將在本文對Java項目開發(fā)到部署發(fā)布整個流程進行歸納梳理。

一、開發(fā)環(huán)境

關(guān)于開發(fā)環(huán)境,在之前寫的一篇文章里有詳細教學(xué),因為是比較基礎(chǔ)的部分,就不在這里過多贅述,如果各位看官需要翻閱可以點擊下面鏈接跳轉(zhuǎn)
Java開發(fā)環(huán)境搭建教程

二、項目搭建

環(huán)境配置好了,自然就是搭建項目框架,這里使用的是idea+maven方式,其他IDE大同小異

2.1 Maven創(chuàng)建項目

2.1.1 創(chuàng)建maven項目

首先file->new->project,注意圖中紅框的JDK版本

2.1.2 引入依賴

打開項目的pom.xml文件,在中配置每一個dependency,而springboot項目,需要添加父依賴

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>***</version>
</parent>

<dependencies>
    <dependency>
        <groupId>***</groupId>
        <artifactId>***</artifactId>
        <version>**</version>
    </dependency>
</dependencies>

2.1.3 maven常用命令

一般來說,maven常用命令用clean和install(package),idea為maven項目提供了按鈕操作,無需在terminal中使用mvn命令

java項目部署文檔,Java程序員進階之路,java,開發(fā)語言

三、SpringBoot基礎(chǔ)配置

server:
  port: 6013 # tomcat端口
  servlet:
    context-path: /v1 # api context path

spring:
  application:
    name: TEST # app name
  datasource:
    url: jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&characterEncoding=UTF8
    username: root
    password: admin
    driver-class-name: com.mysql.cj.jdbc.Driver
  jpa:
    hibernate: 
      ddl-auto: update
    show-sql: true

logging:
  config: classpath:log/logging.xml # 日志配置路徑

四、項目打包

因為是maven構(gòu)建的springboot項目,故這里僅講述maven打包的方式

4.1 打包jar

在pom.xml中配置build即可

<build>
	<finalName>{自行指定打包名稱,不配置則默認項目名稱}</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <fork>true</fork>                   
                <mainClass>{springboot項目入口,即main方法所在類class}</mainClass>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

4.2 打包war

相對于jar包,打包war就需要排除springboot中內(nèi)嵌的tomcat

4.2.1 修改項目打包為war包

java項目部署文檔,Java程序員進階之路,java,開發(fā)語言

4.2.2 排除內(nèi)嵌的tomcat,引入外部tomcat

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

4.2.3 添加servlet-api依賴

<dependency>  
      <groupId>org.apache.tomcat</groupId>  
      <artifactId>tomcat-servlet-api</artifactId>  
      <version>7.0.42</version>  
      <scope>provided</scope>  
</dependency>  

4.2.4 修改app入口方法,繼承SpringBootServletInitializer,記得重寫configure方法

  @SpringBootApplication  
@EnableCaching  
public class TestApplication extends SpringBootServletInitializer {  
  
    @Override  
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {  
        return application.sources(TestApplication.class);  
    }  
  
    public static void main(String[] args) {  
        SpringApplication.run(TestApplication.class, args);  
    }  
}  

4.2.5 和打包jar包一樣添加war包插件,其中warName就是項目啟動后訪問項目的contextPath,當(dāng)然這時候可以去tomcat里配置無需contextPath。默認訪問該項目

<plugin>  
      <groupId>org.apache.maven.plugins</groupId>  
      <artifactId>maven-war-plugin</artifactId>  
      <configuration>  
          <warSourceExcludes>src/main/resources/**</warSourceExcludes>  
          <warName>test</warName>  
      </configuration>  
</plugin>  

五、服務(wù)部署

5.1 winserver

java項目部署文檔,Java程序員進階之路,java,開發(fā)語言

winserver的部署和我們在電腦開發(fā)類似,打包cmd,運行java -jar jar包完整路徑即可

當(dāng)然,可以編寫bat腳本一鍵啟動等等,這些騷操作就不在這里過多講述,可自行發(fā)揮bat編寫

5.2 centos

和winserver類似,打包傳上去,java -jar jar包路徑
不過由于ssh session的關(guān)系,如果直接運行上面命令,會在session前臺運行,此時session要么關(guān)閉,要么看著jar包運行。如果需要后臺運行,則需要用到nohup命令

nohup java -jar **.jar &

控制臺輸出默認在nohup.out中

同winserver的bat一樣,jar包也通常不會再linux中直接運行,一般使用sh腳本或者寫入service中,通過腳本或systemctl等命令運行

六、Nginx相關(guān)配置

6.1 端口轉(zhuǎn)發(fā)

一般來說,我們開發(fā)的端口不會直接使用80,會使用域名轉(zhuǎn)發(fā)到我們的端口服務(wù)上,在nginx中,可以進行一下配置達到此效果

server {
        listen       80;
        server_name  www.***.com;
        charset utf-8;
        location / {
            proxy_pass http://127.0.0.1:8080/**;
        }
        error_page  404 400 401 402 403             /404.html;
		location = /404.html {
			root html;
		}
        error_page   500 502 503 504  /500.html;
        location = /500.html {
            root   html;
        }
}

6.2 HTTPS

https首先需要為自己的域名購買或生成證書,具體方法可自行百度或在各大云服務(wù)商購買
有了證書后,將證書中后綴為crt和key的兩個文件放入和ngxin的nginx.conf文件平級或者下級的目錄中,然后在需要https訪問的域名中配置如下

server {
		# https 默認443端口
        listen       443 ssl;
        server_name  www.***.com;
        charset utf-8;
        
        #證書文件名稱
    	ssl_certificate 1_www.***.com_bundle.crt; 
 		#私鑰文件名稱
    	ssl_certificate_key 2_www.***.com.key; 
   		ssl_session_timeout 5m;
 		#請按照以下協(xié)議配置
    	ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
 		#請按照以下套件配置,配置加密套件,寫法遵循 openssl 標(biāo)準(zhǔn)。
   		ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
    	ssl_prefer_server_ciphers on;
        
        location / {
            proxy_pass http://127.0.0.1:8080/**;
        }
        error_page  404 400 401 402 403             /404.html;
		location = /404.html {
			root html;
		}
        error_page   500 502 503 504  /500.html;
        location = /500.html {
            root   html;
        }
}

6.3 靜態(tài)Web

靜態(tài)web的配置方式與端口轉(zhuǎn)發(fā)類似,只是將proxy_pass換成了root路徑

server {
        listen       80;
        server_name  www.***.com;
        charset utf-8;
        location / {
            root   /usr/local/web/***;
            index  index.html;
        }
        error_page  404 400 401 402 403             /404.html;
		location = /404.html {
			root html;
		}
        error_page   500 502 503 504  /500.html;
        location = /500.html {
            root   html;
        }
}

6.4 靜態(tài)資源訪問

靜態(tài)資源和靜態(tài)web配置一致,只需要將web路徑換成資源路徑即可,訪問同樣按照web訪問資源文件文章來源地址http://www.zghlxwxcb.cn/news/detail-768363.html

server {
        listen       80;
        server_name  file.***.com;
        charset utf-8;
        location / {
            root   /usr/local/file/***;
            index  index.html;
        }
}

到了這里,關(guān)于【java】Java項目從開發(fā)到部署生產(chǎn)完整流程梳理的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 項目打包并部署到Docker環(huán)境的完整流程

    使用前端構(gòu)建工具(例如Webpack、Vue CLI、Create React App)將前端項目打包成靜態(tài)文件。 創(chuàng)建一個名為 Dockerfile 的文件,內(nèi)容如下: 3.使用以下命令構(gòu)建Docker鏡像: 4.運行以下命令啟動前端容器: 5.現(xiàn)在可以通過瀏覽器訪問 http://localhost 來查看部署的前端應(yīng)用。 1.確保你的后端

    2024年02月14日
    瀏覽(31)
  • java+vue 前后端項目部署 服務(wù)器部署流程 包括nginx軟件安裝,服務(wù)器選擇,域名配置

    java+vue 前后端項目部署 服務(wù)器部署流程 包括nginx軟件安裝,服務(wù)器選擇,域名配置

    現(xiàn)在的web端項目大多數(shù)都是java+vue前后端分離的項目,都需要分開來部署,基本上都是部署在云服務(wù)器上的,這就涉及到選擇和購買服務(wù)器,以及安裝環(huán)境,本文記錄的是在機器上安裝軟件,不在docker和寶塔上安裝。下面請看詳細的步驟吧,都是自己在工作中使用過的,本人

    2024年02月13日
    瀏覽(24)
  • 07_SpringBoot 對接支付寶完成掃碼支付,完整流程梳理!

    07_SpringBoot 對接支付寶完成掃碼支付,完整流程梳理!

    需求:系統(tǒng)A對接支付寶,實現(xiàn)支持用戶掃碼支付 對接的API文檔: https://open.alipay.com/api 可選的支付方式有: 掃碼付 :出示付款碼或者用戶掃碼付款 APP支付 :在APP中喚起支付寶 手機網(wǎng)站支付 :在移動端網(wǎng)頁中喚起支付寶 App 或支付寶網(wǎng)頁 電腦網(wǎng)站支付 :在PC端喚起支付寶

    2024年04月16日
    瀏覽(38)
  • 保姆級教程:SpringBoot 對接支付寶完成掃碼支付,完整流程梳理!

    保姆級教程:SpringBoot 對接支付寶完成掃碼支付,完整流程梳理!

    1、支付方式選擇 2、交互流程 3、1. 對接準(zhǔn)備 2.加密解密 + 簽名驗簽 3.沙箱環(huán)境 4、內(nèi)網(wǎng)穿透 5、二維碼 6、下單 7、異步通知回調(diào) 8、查詢支付結(jié)果 9、退款 10、通用版SDK 需求:系統(tǒng)A對接支付寶,實現(xiàn)支持用戶掃碼支付 對接的API文檔: https://open.alipay.com/api 可選的支付方式有:

    2024年04月11日
    瀏覽(25)
  • Java Docker 生產(chǎn)環(huán)境部署

    隨著容器化技術(shù)的廣泛應(yīng)用,Docker成為了一種非常流行的容器化解決方案。Java作為一種跨平臺的編程語言,在生產(chǎn)環(huán)境中也廣泛使用。本文將介紹如何使用Docker來部署Java應(yīng)用程序,并探討一些最佳實踐和注意事項。 Docker是一種輕量級的容器化解決方案,它能夠?qū)?yīng)用及其依

    2024年02月04日
    瀏覽(21)
  • 【Java開發(fā)】 Spring 11 :Spring Boot 項目部署至云服務(wù)器

    【Java開發(fā)】 Spring 11 :Spring Boot 項目部署至云服務(wù)器

    Spring Boot 項目開發(fā)結(jié)束后的工作便是運維,簡單來說需要配置?Web 運行參數(shù)和項目部署兩大工作,本文將盡可能詳細地給大家講全! 目錄 1 定制 Web 容器運行參數(shù) 1.1?運行參數(shù)介紹 1.2?項目搭建 ① 通過 IDEA Spring Initializr 創(chuàng)建項目 ② 添加 Spring Web 等依賴 ③ 編寫 controller 層的

    2023年04月23日
    瀏覽(97)
  • java發(fā)送公眾號/服務(wù)通知模板消息到指定用戶(完整流程|親測可用)

    java發(fā)送公眾號/服務(wù)通知模板消息到指定用戶(完整流程|親測可用)

    準(zhǔn)備: 獲取當(dāng)前微信小程序appId(小程序appId)獲取當(dāng)前小程序的秘鑰secret 新建模板消息 選用后勾選需要的字段并提交 一次訂閱: 指用戶訂閱一次,服務(wù)號可不限時間地下發(fā)一條對應(yīng)的訂閱通知; 長期訂閱: 指用戶訂閱一次,服務(wù)號可長期多次下發(fā)通知,長期訂閱通知僅

    2024年02月10日
    瀏覽(22)
  • 一百九十八、Java——IDEA項目中有參構(gòu)造、無參構(gòu)造等快捷鍵(持續(xù)梳理中)

    一百九十八、Java——IDEA項目中有參構(gòu)造、無參構(gòu)造等快捷鍵(持續(xù)梳理中)

    由于IDEA項目中有很多快捷鍵,可以很好的提高開發(fā)效率,因此整理一下 快捷鍵:psvm alt + insert + Constructor alt + insert + Getter and Setter 在 env.fromElements(1, 2, 4, 67, 189) 后面,? ? ? ? ?.var+回車 持續(xù)梳理中!

    2024年02月06日
    瀏覽(24)
  • Java企業(yè)級信息系統(tǒng)開發(fā)學(xué)習(xí)筆記(4.2)Spring Boot項目單元測試、熱部署與原理分析

    Java企業(yè)級信息系統(tǒng)開發(fā)學(xué)習(xí)筆記(4.2)Spring Boot項目單元測試、熱部署與原理分析

    該文章主要為完成實訓(xùn)任務(wù),詳細實現(xiàn)過程及結(jié)果見【http://t.csdn.cn/pG623】 1. 添加測試依賴啟動器和單元測試 修改pom.xml文件,添加依賴 刷新項目依賴 2. 創(chuàng)建測試類與測試方法 在 src/test/java 里創(chuàng)建 cn.kox.boot 包,創(chuàng)建測試類 TestHelloWorld01 給測試類添加測試啟動器注解與Spring

    2024年02月10日
    瀏覽(27)
  • uni-app開發(fā)小程序以及項目部署流程

    uni-app開發(fā)小程序以及項目部署流程

    作者也是剛開始接觸小程序開發(fā),本次小程序開發(fā)使用的uni-app,記錄下小程序的開發(fā)過程。 ? ? ? ? 作者使用的開發(fā)工具:HBuilder x、微信開發(fā)者工具。 ? ? ? ? 詳細步驟可參考uni-app官網(wǎng)-快速上手,下面簡述下作者的使用過程: ? ? ? ? 1.在HBuilder X 中打開如下路徑文件 - 新

    2024年02月09日
    瀏覽(100)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包