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