1. 程式人生 > >Spring Boot快速搭建Spring框架

Spring Boot快速搭建Spring框架

pro eve -s return onf build 搭建 artifact version

Spring是一個開源框架,Spring是於2003 年興起的一個輕量級的Java 開發框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中闡述的部分理念和原型衍生而來。

它是為了解決企業應用開發的復雜性而創建的。框架的主要優勢之一就是其分層架構,分層架構允許使用者選擇使用哪一個組件,同時為 J2EE 應用程序開發提供集成的框架。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。

然而,Spring的用途不僅限於服務器端的開發。從簡單性、可測試性和松耦合的角度而言,任何Java應用都可以從Spring中受益。Spring的核心是控制反轉(IoC)和面向切面(AOP)。簡單來說,Spring是一個分層的JavaSE/EEfull-stack(一站式) 輕量級開源框架。

Spring Boot 是 Spring 框架的一個新的子項目,用於創建 Spring 4.0 項目。它的開發始於 2013 年。2014 年 4 月發布 1.0.0 版本。它可以自動配置 Spring 的各種組件,並不依賴代碼生成和 XML 配置文件。Spring Boot 也提供了對於常見場景的推薦組件配置。Spring Boot 可以大大提升使用 Spring 框架時的開發效率。下面本文將對 Spring Boot 進行詳細的介紹。

Spring Boot 包含的特性如下:

1、創建可以獨立運行的 Spring 應用。

2、直接嵌入 Tomcat 或 Jetty 服務器,不需要部署 WAR 文件。

3、提供推薦的基礎 POM 文件來簡化 Apache Maven 配置。

4、盡可能的根據項目依賴來自動配置 Spring 框架。

5、提供可以直接在生產環境中使用的功能,如性能指標、應用信息和應用健康檢查。

6、沒有代碼生成,也沒有 XML 配置文件。

新建Maven功能,將下面代碼直接復制到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>
<groupId>com.example</groupId>
<artifactId>SpringBootSimple</artifactId>
<version>1.0-SNAPSHOT</version>

<properties>
<spring.boot.version>1.1.4.RELEASE</spring.boot.version>
</properties>

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>${spring.boot.version}</version>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring.boot.version}</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

從上面pom.xml文件中可以看到應用所聲明的依賴很少,只有一個“org.springframework.boot:spring-boot-starter-web”,而不是像其他 Spring 項目一樣需要聲明很多的依賴。

當使用 Maven 命令“mvn dependency:tree”來查看項目實際的依賴時,會發現其中包含了 Spring MVC 框架、SLF4J、Jackson、Hibernate Validator 和 Tomcat 等依賴。這實際上 Spring 推薦的 Web 應用中使用的開源庫的組合。

調用Spring Boot應用Java代碼,具體如下:

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@EnableAutoConfiguration
public class Application {
@RequestMapping("/")
String index() {
return "www.yoodb.com";
}
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}

Application.java類是一個簡單的可以獨立運行的 Web 應用。直接運行該 Java 類會啟動一個內嵌的 Tomcat 服務器運行在 8080 端口。訪問“http://localhost:8080”可以看到頁面上顯示“www.yoodb.com”.只需要簡單的2個文件就可以啟動一個獨立運行的 Web 應用。並不需要額外安裝 Tomcat類似的應用服務器,也不需要打包成WAR文件。可以通過“mvn spring-boot:run”在命令行啟動該應用。

在pom.xml文件中添加了“org.springframework.boot:spring-boot-maven-plugin”插件。在添加了該插件之後,當運行“mvn package”進行打包時,會打包成一個可以直接運行的 JAR 文件,使用“java -jar”命令就可以直接運行。很大程度上簡化了應用的部署,只需要安裝了 JRE 就可以運行。

“@EnableAutoConfiguration”註解的作用在於讓 Spring Boot 根據應用所聲明的依賴來對Spring框架進行自動配置,減少了開發人員的工作量。註解“@RestController”和”@RequestMapping”由Spring MVC 提供,用來創建REST服務。這兩個註解和 Spring Boot 本身並沒有關系的。

Spring Boot快速搭建Spring框架