在JavaEE的領(lǐng)域级遭,Spring可以說是占據(jù)了半壁江山。但Spring各種復(fù)雜的XML配置一直被開發(fā)者詬病。
Pivotal在2014年4月發(fā)布了SpringBoot的1.0版,到現(xiàn)在已經(jīng)有3個年頭了巩搏。其實也不是新東西了。
Spring Boot旨在減少配置的原則下趾代,高效贯底,快速的開發(fā)應(yīng)用。
而且Sping Boot的簡單的jar包運行方式撒强,以及基于Netflix的Spring Cloud分布式體系禽捆。使得Spring Boot應(yīng)用成為分布式微服務(wù)的優(yōu)秀選擇。現(xiàn)在不學(xué)習Spring Boot飘哨,似乎你已經(jīng)落后了胚想。
然而學(xué)習Spring Boot的成本并沒有你想象的那么好,獲取只有半個小時芽隆?直到你看完這篇文章浊服!
一切都從HelloWord開始的。
Spring.io提供了完整的入門示例胚吁。
http://spring.io/guides/gs/spring-boot/
這里摘錄基于Maven的構(gòu)建牙躺。
一、首頁你應(yīng)該建立你的工程目錄以及必要的pom.xml
root\src\main\java 用于存放你的Java代碼
root\pom.xml
二腕扶、編寫pom.xml
<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>com.xyyh</groupId>
<artifactId>app</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<!-- 為了輕松管理各個依賴的版本孽拷,直接使用Spring提供的parent -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.3.RELEASE</version>
</parent>
<!-- 覆蓋屬性配置包括字符集和Java版本 -->
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<!-- 為了使用SpringBoot,你需要不同的starter,Spring提供了數(shù)十個starter,以簡化各種配置工作 -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<!-- maven的Spring支持插件半抱,有了它脓恕,你可以把你的Spring Boot應(yīng)用構(gòu)建為可獨立運行的jar-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
編寫入口程序文件
src\main\java\com.xyyh.app.Application.java
importorg.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RequestMapping("test")
@RestController
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@RequestMapping(method = RequestMethod.GET)
public String test() {
return "hellow world";
}
}
代碼解析
- @SpringBootApplication這個注解標示程序是個Spring Boot應(yīng)用膜宋,使用這個注解之后,在程序啟動時炼幔,程序就會掃描項目下面的各種配置和bean激蹲。
- main方法,程序的入口點江掩,固定寫法,程序從這里開始運行乘瓤。
四环形、編譯和運行
使用 mvn spring-boot:run,可以直接運行程序衙傀,然后在瀏覽器中輸入 localhost:8080/test即可看到運行結(jié)果
五呢蛤、將項目打包成可運行的jar 柑潦,直接運行mvnpackage 即可將Spring Boot項目打包成可運行jar,可以用 java -jar xxx.jar啟動服務(wù)。
本期內(nèi)容主要構(gòu)建一個簡單的hello world凯肋,工欲善其事、必先利其器粟害,下期會著重講解IDE相關(guān)的配置甚疟,幫助你更高效的開發(fā)Spring Boot應(yīng)用。
相關(guān)鏈接
使用IDE或者向?qū)Чぞ哐杆贅?gòu)建一個Spring Boot應(yīng)用