Spring Boot-2搭建入門案例
Eclipse+Maven+ Spring Boot來快速構建一個Spring Boot的web應用
1.建立一個Maven父工程,在pom.xml中匯入jar包
<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> <groupId>cn.com.chnsys</groupId> <artifactId>ecfs</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging> <!--SpringBoot官方推薦依賴 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <properties> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.9.RELEASE</version> </dependency> </dependencies> </project>
各個依賴及節點作用介紹:
- spring-boot-starter-parent:
這個依賴是SpringBoot官方推薦的。包含了大量預設配置及以下資訊
a,使用java6編譯級別
b,使用utf-8編碼
c,實現了通用的測試框架 (JUnit, Hamcrest, Mockito)
d,智慧的外掛配置(exec plugin, surefire, Git commit ID, shade)
2.spring-boot-starter-web
是Spring Boot開箱機動自動配置之一。自動配置了web項
3.<properties></properties>
規定了java的版本和編碼方式
建立子模組controller層,並在pom.xml加入maven編譯和打包外掛
<build> <!-- 打包後jar包名稱 --> <finalName>ecfs-controller</finalName> <plugins> <!-- 編譯外掛 --> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <!-- 打包外掛 --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!-- 啟動類 --> <mainClass>cn.com.chnsys.MainStart</mainClass> <layout>ZIP</layout> </configuration> <executions> <execution> <goals> <!-- 可以把依賴的包都打包到生成的Jar包中 --> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
儲存後項目結構:Java版本變為1.8,多了maven依賴
各個節點作用介紹:
1.<source>1.8</source>
指定了本地java版本為1.8
2.<target>1.6</target>
指定了專案打成jar後,放到了Java1.6環境中去執行。這種方式避免了部署後因為Java版本不同而導致執行問題。可以在專案打包時將問題暴露出來。在我本地測試中發現,如果<properties>中指定Java版本為1.8,但是編譯外掛中指定的版本為低的時候,maven會自動將專案改為低版本的。
3.<mainClass></mainClass>
指定了啟動類,值為Spring Boot啟動類的全路徑類名(下面將要建立啟動類)
4.<layout></layout>
這個節點作用目前還不清楚。但是在本地測試中發現,它和<mainClass>必須存在一個時,專案打成的jar包才可以執行,否則會報錯找不到mainclass
建立啟動類:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MainStart {
public static void main(String[] args) {
SpringApplication.run(MainStart.class, args);
}
}
建立controller類:
@Controller
public class AnnotationController {
@RequestMapping("/hello")
@ResponseBody
public String hello(@PathParam("name") String name) {
return name;
}
}
這樣我們就完成了一個Spring Boot專案。下面可以啟動專案來看一下效果
啟動方式:
1)啟動main方法
2)在專案跟路徑下開啟cmd黑視窗,命令:mvn spring-boot:run
3)打包後啟動jar包 java -jar jar包名稱
使用maven命令可以直接打包:clean package
在瀏覽器中輸入:http://localhost:8080/hello?name=甘道夫