Spring Boot 揭祕與實戰(一) 快速上手

計劃開個專欄,講解《Spring Boot 揭祕與實戰》系列。
原文地址:Spring Boot 揭祕與實戰(一) 快速上手
博客地址:blog.720ui.com/javascript

簡介

什麼是Spring Boot

Spring Boot其設計目的是用來簡化 Spring 應用的初始搭建以及開發過程。Spring Boot 的目標不在於爲已解決的問題域提供新的解決方案,而是爲平臺帶來另外一種開發體驗,從而簡化對這些已有技術的使用。Spring Boot 充分利用了 JavaConfig 的配置模式以及「約定優於配置」的理念,可以極大的簡化基於 Spring MVC 的 Web 應用和 REST 服務開發。對於已經熟悉 Spring 生態系統的開發人員來講,Spring Boot 是一個很理想的選擇。java

爲何選擇Spring Boot

  • Spring Boot 使編碼變簡單
  • Spring Boot 使配置變簡單
  • Spring Boot 使部署變簡單
  • Spring Boot 使監控變簡單

相關知識

Spring Boot的spring-boot-starter

Spring Boot提供了不少」開箱即用「的依賴模塊,都是以spring-boot-starter-xx做爲命名的。下面列舉一些經常使用的模塊。git

  • spring-boot-starter-logging :使用 Spring Boot 默認的日誌框架 Logback。
  • spring-boot-starter-log4j :添加 Log4j 的支持。
  • spring-boot-starter-web :支持 Web 應用開發,包含 Tomcat 和 spring-mvc。
  • spring-boot-starter-tomcat :使用 Spring Boot 默認的 Tomcat 做爲應用服務器。
  • spring-boot-starter-jetty :使用 Jetty 而不是默認的 Tomcat 做爲應用服務器。
  • spring-boot-starter-test :包含經常使用的測試所需的依賴,如 JUnit、Hamcrest、Mockito 和 spring-test 等。
  • spring-boot-starter-aop :包含 spring-aop 和 AspectJ 來支持面向切面編程(AOP)。
  • spring-boot-starter-security :包含 spring-security。
  • spring-boot-starter-jdbc :支持使用 JDBC 訪問數據庫。
  • spring-boot-starter-redis :支持使用 Redis。
  • spring-boot-starter-data-mongodb :包含 spring-data-mongodb 來支持 MongoDB。
  • spring-boot-starter-data-jpa :包含 spring-data-jpa、spring-orm 和 Hibernate 來支持 JPA。
  • spring-boot-starter-amqp :經過 spring-rabbit 支持 AMQP。
  • spring-boot-starter-actuator : 添加適用於生產環境的功能,如性能指標和監測等功能。

Java Config 自動配置

Spring Boot 推薦採用基於 Java Config 的配置方式,而不是傳統的 XML。例如,@Configuration、@Bean、@EnableAutoConfiguration、@CompomentScan、@PropertySource、@Repository、@Service、@RestController等。github

快速上手

Spring Boot初體驗

經過 Spring Boot,建立新的 Spring 應用變得很是容易,只須要簡單的幾個步驟就能夠建立出一個應用。
首先,咱們先建立一個 POM 文件。web

<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>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-parent</artifactId>
          <version>1.3.3.RELEASE</version>
     </parent>
    <groupId>com.lianggzone.demo</groupId>
    <artifactId>springboot-action</artifactId>
    <version>0.1</version>
    <packaging>war</packaging>
    <name>springboot-action</name>
    <dependencies>
        <dependency>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-starter</artifactId>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
              </plugin>
        </plugins>
    </build>
</project>複製代碼

而後,第二步,建立 Java 代碼。redis

@SpringBootApplication
public class ApplicationDemo {

    public static void main(String[] args) throws Exception {
        System.out.println(" springApplication run !");
        SpringApplication.run(ApplicationDemo.class, args);
    }
}複製代碼

快速搭建web工程

經過 Spring Boot,建立 web 工程也很是簡單。
修改 POM 文件,添加依賴。spring

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>複製代碼

建立Java代碼mongodb

@RestController
@EnableAutoConfiguration
public class RestfulApiWebDemo {
    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }
    public static void main(String[] args) throws Exception {
        SpringApplication.run(RestfulApiWebDemo.class, args);
    }
}複製代碼

直接運行 Java 類,或者能夠經過「mvn spring-boot:run」在命令行啓動該應用。會啓動一個內嵌的 Tomcat 服務器運行在 8080 端口。訪問 http://localhost:8080 能夠看到頁面上顯示「Hello World!」。
此外,在 POM 文件添加插件。數據庫

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
</plugin>複製代碼

在添加了插件後,當運行「mvn package」進行打包時,會打包成一個能夠直接運行的 JAR 文件,使用「java -jar」命令就能夠直接運行。apache

源代碼

相關示例完整代碼: springboot-action

(完)

更多精彩文章,盡在「服務端思惟」微信公衆號!

相關文章
相關標籤/搜索