【20200901】搭建Java運行環(huán)境IntelliJ版

1. 介紹

1.1 什么是Spring

我們說到Spring,一般指代的是Spring Framework,它是一個開源的應(yīng)用程序框架,提供了一個簡易的開發(fā)方式,通過這種開發(fā)方式,將避免那些可能致使代碼變得繁雜混亂的大量的業(yè)務(wù)/工具對象,說的更通俗一點就是由框架來幫你管理這些對象,包括它的創(chuàng)建,銷毀等

1.2 什么是Spring MVC

Spring MVC是Spring的一部分,Spring 出來以后,大家覺得很好用,于是按照這種模式設(shè)計了一個 MVC框架(一些用Spring 解耦的組件),主要用于開發(fā)WEB應(yīng)用和網(wǎng)絡(luò)接口,它是Spring的一個模塊,通過Dispatcher Servlet, ModelAndView 和 View Resolver,讓應(yīng)用開發(fā)變得很容易。

1.3?什么是Spring Boot

初期的Spring通過代碼加配置的形式為項目提供了良好的靈活性和擴展性,但隨著Spring越來越龐大,其配置文件也越來越繁瑣,太多復(fù)雜的xml文件也一直是Spring被人詬病的地方,特別是近些年其他簡潔的WEB方案層出不窮,如基于Python或Node.Js,幾行代碼就能實現(xiàn)一個WEB服務(wù)器,對比起來,大家漸漸覺得Spring那一套太過繁瑣,此時,Spring社區(qū)推出了Spring Boot,它的目的在于實現(xiàn)自動配置,降低項目搭建的復(fù)雜度,如需要搭建一個接口服務(wù),通過Spring Boot,幾行代碼即可實現(xiàn)。

2. 安裝

2.1 安裝JDK

下載JDK12

https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html

2.2 安裝IntelliJ

下載IntelliJ

https://www.jetbrains.com/idea/download/#section=windows

IntelliJ是由 jetbrains 開發(fā)的收費IDE軟件,使用體驗比 Eclipse 好很多

2.3 配置JDK

我們需要為 JDK 設(shè)置環(huán)境變量 JAVA_HOME,以為引用 JDK 的程序可以找到

設(shè)置 Windows 環(huán)境變量 JAVA_HOME 指向 JDK 安裝目錄

設(shè)置環(huán)境變量需要重啟電腦

3. 使用

3.1 安裝Spring Boot

IntelliJ默認(rèn)是支持 Spring Boot 項目的,不過名字叫做 Spring Initializr 就是了

3.2 建立Spring Boot項目

點擊 File -> New Project

在彈出的窗口左側(cè)菜單里點擊 Spring Initializr,點擊 Next

在 Artifact 一欄輸入項目名稱 test

下一步直接點擊 Next

在下一步的窗口左側(cè)菜單里點擊 Web,勾選右側(cè)的 Spring Web,點擊 Next

下一步直接點擊 Finish

接下來窗口關(guān)閉,等待初始化完畢

3.3 測試Spring Boot項目

展開 Project 項目結(jié)構(gòu),選擇 src -> main -> java -> com -> example -> test 節(jié)點

在 test 節(jié)點下面建立目錄 model(模型),controller(控制器)

在 model 目錄建立程序 Test.java,內(nèi)容如下

package?com.example.demo.model;

public?class?Test?{

????private?final?long?id;

????private?final?String?content;


????public?Test(long?id,?String?content)?{

????????this.id?=?id;

????????this.content?=?content;

????}


????public?long?getId()?{

????????return?id;

????}


????public?String?getContent()?{

????????return?content;

????}

}

在 controller 目錄建立程序 TestController.java,內(nèi)容如下

package?com.example.demo.controller;

import?java.util.concurrent.atomic.AtomicLong;

import?org.springframework.web.bind.annotation.RequestMapping;

import?org.springframework.web.bind.annotation.RequestParam;

import?org.springframework.web.bind.annotation.RestController;

import?com.example.demo.model.Test;

@RestController

public?class?TestController?{

????private?static?final?String?template?=?"Hello,?%s!";


????private?final?AtomicLong?counter?=?new?AtomicLong();


????@RequestMapping("/counter")

????public?Test?dealTest(@RequestParam(value="name",?defaultValue="World")?String?name)?{

????????return?new?Test(counter.incrementAndGet(),

????????????String.format(template,?name));

????}

}

在 TestApplication.java 的類定義里修改@SpringBootApplication注釋來取消自動加載配置

因為Spring Boot 會自動配置數(shù)據(jù)庫連接,不過我們這個測試項目還用不到連接數(shù)據(jù)庫

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})

點擊 Run -> Run 'TestApplication' 編譯并啟動項目

打開瀏覽器,輸入網(wǎng)址 http://localhost:8080/counter,應(yīng)該可以看到 Hello World 結(jié)果內(nèi)容!

3.4 Spring Boot轉(zhuǎn)Web

打開項目 pom.xml 文件,在 project 下面添加項目,設(shè)置打包方式

<packaging>war</packaging>

在 project -> dependencies 下面添加項目,設(shè)置使用外部 tomcat 服務(wù)器

<dependency>

????<groupId>org.springframework.boot</groupId>

????<artifactId>spring-boot-starter-tomcat</artifactId>

????<scope>provided</scope>

</dependency>

啟動程序 Application.java 增加兩行引用

import?org.springframework.boot.builder.SpringApplicationBuilder;

import?org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

啟動程序 Application.java 更改類繼承父類?SpringBootServletInitializer

public?class?Application?extends?SpringBootServletInitializer?{

啟動程序 Application.java 添加重載方法?configure

@Override

protected?SpringApplicationBuilder?configure(SpringApplicationBuilder?builder)?{

????return?builder.sources(Application.class);

}

4. Mavan

4.1 Apache Maven

4.1.1 下載

從官網(wǎng)下載 maven 包,地址http://maven.apache.org/download.cgi

選擇 Binary 包下載,地址https://archive.apache.org/dist/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz

解壓縮得到 apache-maven-3.6.1 目錄

4.1.2 導(dǎo)入

打開 File -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven

右側(cè) Maven home directory 修改為 apache-maven-3.6.1 的路徑

右側(cè) User settings file 修改為 apache-maven-3.6.1/conf/settings.xml 的路徑

點擊 OK 關(guān)閉窗口

點擊彈出的小提示框里的 Import changes 鏈接

這里會下載項目依賴庫包,會比較漫長,慢慢等待吧

4.2 Mirror

4.2.1 設(shè)置鏡像

如果發(fā)現(xiàn) repo.maven.apache.org 慢的話可以設(shè)置一些鏡像地址來提高速度

打開 apache-maven-3.6.1/conf/settings.xml

搜索 mirrors 節(jié)點,在里面添加自己的鏡像地址

<mirror>

????<id>alimaven</id>

????<mirrorOf>central</mirrorOf>

????<name>aliyun?maven</name>

????<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>

</mirror>

然后重新 build 就會使用這個鏡像地址了

4.3 打包war

4.3.1 打包war

我們需要將項目打包成war,用來部署到tomcat上

設(shè)置 Windows 環(huán)境變量 Path 增加指向 maven 的路徑?apache-maven-3.6.1/bin

重啟電腦后,可以在 cmd 里輸入命令 mvn -v 查看是否配置成功

Apache?Maven?3.6.1?(d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555;?2019-04-05T03:00:2

9+08:00)

Maven?home:?C:\Users\tongfu\eclipse\jee-2019-06\eclipse\apache-maven-3.6.1\bin\.

.

Java?version:?12.0.2,?vendor:?Oracle?Corporation,?runtime:?C:\Program?Files\Java

\jdk-12.0.2

Default?locale:?zh_CN,?platform?encoding:?GBK

OS?name:?"windows?7",?version:?"6.1",?arch:?"amd64",?family:?"windows"

通過 cd 命令進入到自己的項目根目錄,執(zhí)行 mvn clean package,看到如下信息則表示成功了

[INFO]?Replacing?main?artifact?with?repackaged?archive

[INFO]?------------------------------------------------------------------------

[INFO]?BUILD?SUCCESS

[INFO]?------------------------------------------------------------------------

[INFO]?Total?time:??01:00?min

[INFO]?Finished?at:?2019-08-28T17:54:54+08:00

[INFO]?------------------------------------------------------------------------

然后就可以在項目的 target 目錄下面找到打包完成的 war 文件了

【20200901】搭建Java運行環(huán)境IntelliJ版 第 1 頁 - 鬼谷子叔叔的主頁 - 同福網(wǎng) - TONGFU.net

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容