1、打開idea開發工具,在菜單欄選擇File-->New-->Project...-->Spring Initializer
說明:社區版的idea是沒有Spring Initializer選項的,需要下載專業版的,網上有很多破解碼的,不用擔心過期問題
2、填寫Group和Artifact等信息
Group:分組(影響或效果,此處填的會是工程目錄結構src/main/java下的多級文件夾,多級文件夾Group用.間隔,5.1中舉例子來看下效果)
Artifact:可以把它理解成“生成的東西”就差不多了。這個詞強調的是這是你軟件生產過程中某一步的產生物,不像程序本身,或者是配置文件這些,是你手寫出來的。(影響或效果,此處填的會是工程目錄結構src/main/java下Group填寫的文件夾下的文件夾名稱和框架啟動類名稱,5.1中舉例子來看下效果)
Aritifact可以修改,但注意Aritifact不能包含大寫字母
后面第四步的項目名稱會默認是這個
Type :項目管理方式,可以任意選擇,一般選擇用Maven project即maven倉庫管理比較方便
Packaging : 項止打包方式,可以選擇jar包或war包,由於spring-boot已集成tomcat,故可以用java -jar方式運行
其他默認即可
3、選擇主體功能,目前操作只需讓項目運行起來,所以只勾選web,其它以后需要時詳解(這里是選擇依賴,選擇后會將對應的包放到pom文件中,或者生成對應的config文件)
4、Project name,給項目命名,可任意;Project location,項目存儲的區域,可以事先建一個文件夾用以提供存儲。點擊 Finish 完成創建。
5、至此我們完成了第一個springboot的搭建,還是很簡單的,idea為我們生成了一個空的spring框架。
5.1、我們在來看下第二步填寫Group和Artifact以及第四步填寫的項目名稱會是什么效果
Group=aaa.bbb
Artifact=ccc
Project name會默認為ccc,改為ddd
6、我們來看一下空框架的結構,以便更加了解springboot
src/main/java:主程序入口 Application,可以通過直接運行該類來 啟動 Spring Boot應用
src/main/resources:配置目錄,該目錄用來存放應用的一些配置信息,比如應用名、服務端口、數據庫配置等。由於我們應用了Web模塊,因此產生了 static目錄與templates目錄,前者用於存放靜態資源,如圖片、CSS、JavaScript等;后者用於存放Web頁面的模板文件。
application.properties/application.yml 用於存放程序的各種依賴模塊的配置信息,比如 服務端口,數據庫連接配置等。。。
src/test:單元測試目錄,生成的 ApplicationTests 通過 JUnit4實現,可以直接用運行 Spring Boot應用的測試。
TestoneApplication:是用於啟動Spring Boot項目的
pom.xml:maven管理文件,主要用於管理各種依賴包
7、pom.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- 起步依賴 -->
<parent>
<!-- 這個特殊的依賴包含了應用運行需要的所有信息,它包含了Spring Boot應用所必須的類似於Spring FrameWork(spring-core)、
Spring Test(spring-test)等基礎依賴的依賴描述。你只需要使用這個parent pom就能完成所有的依賴描述添加工作。-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.springboot</groupId>
<artifactId>springboo_testone</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>springboo_testone</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!-- web項目庫,dependencies里面存放各個依賴包 -->
<dependency>
<!-- 添加這個依賴之后就可以創建一個web應用程序。starter poms部分可以引入所有需要在實際項目中使用的依賴。
spring-boot-starter-web依賴包含所有的spring-core, spring-web, spring-webmvc,嵌入的Tomcat server和其他web應用相關的庫。 -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<!-- 測試所需庫 -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
8、下面開始第一個springboot項目的編寫
在src/main/java/controller包下創建一個HelloController
package com.springboot.springboo_testone.controller;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@EnableAutoConfiguration
public class HelloController {
@RequestMapping("/hello")
public String hello(){
return "hello,this is springboot test one";
}
}
注解說明:
@RestController:這是一個構造型(stereotype) 注解,顧名思義,該注解是@Controller和@ResponseBody的結合體,兩個標注合並起來的作用。@RestController注解告訴Spring直接渲染結果字符串返回給調用者。對於Spring來講,這個類扮演了一個特殊的角色,在本案中,我們的類是一個Web @Controller,所以當處理進來的web請求時, Spring會詢問它。
@RequestMapping:此注解提供的是路由信息。它告訴Spring任何來自“/”路徑的請求都會被映射到home方法。
@EnableAutoConfiguration:這個注解告訴Spring Boot去“猜測(guess)”需要如何配置Spring,主要基於pom.xml中所添加的jar依賴。由於 spring-boot-starter-web 添加了Tomcat和Spring MVC, 所以auto-configuration將假定你正在開發一個web應用並相應地對Spring進行設置。
9、啟動
運行TestoneApplication類
Spring Boot中集成了Tomcat,因此我們不需要在開發工具中針對Tomcat做任何配置,在運行結果中我們可以看到已經啟動了Tomcat的8080端口,這個是Tomcat的默認端口。
如果要修改默認端口,可以在src/main/resources下application.yml或者application.properties文件,自定義端口
application.properties
# tomcat端口號配置
server.port=15888
application.yml
# tomcat配置
server:
# 端口號
port: 15888
10、測試:在瀏覽器地址欄輸入http://localhost:15888/hello