Spring Boot 初識

介紹

You can use Spring Boot to create Java applications that can be started using java -jar or more traditional war deployments. We also provide a command line tool that runs “spring scripts”.

系統要求

當前最新正式版是Spring Boot 1.5.3.RELEASE ,所以本文參考的都是該版本的文檔,要求 Java 7 ,構建工具要求 Maven (3.2+) Gradle 2 (2.9 or later) and 3,官方推薦 Java 8

Mac 安裝 Spring Boot CLI 客戶端

如果使用了homebrew,可以執行下面命令

 brew tap pivotal/tap
 brew install springboot

會安裝spring 命令到 /usr/local/bin

客戶端啓動示例

新建文件 app.groovy

@RestController
class ThisWillActuallyRun {

    @RequestMapping("/")
    String home() {
        "Hello World!"
    }

}

執行命令 spring run app.groovy 然後在瀏覽器上打開 localhost:8080 查看內容。

手動創建項目

有三種方法:

1.https://start.spring.io/ 到這個網站填寫項目元信息和依賴的包,可以自動生成 maven項目和gradle項目,生成的項目結構相對完整一些,挺不錯的選擇。

2.使用 Intellij idea 的 spring initializr 功能,其實和方法一類似,只是用本地IDE創建項目會更方便些。 File->New->Project->Spring Initializr,然後填下項目信息,一路 next 即可。

3.先建個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.lzhenxing</groupId>
    <artifactId>myproject</artifactId>
    <version>0.0.1-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.3.RELEASE</version>
    </parent>

    <!-- Additional lines to be added here... -->

</project>

執行命令 mvn package build 項目,然後將項目導入 idea 中,生成的項目沒什麼目錄結構,還要自己建文件夾結構,不太方便。

推薦用方法二來創建項目,方便又快捷。用第二種方法創建項目時,依賴選擇 web,那麼創建項目後,pom.xml 中會自動添加有關 web 的依賴包,會看到項目中 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.lzhenxing</groupId>
    <artifactId>myproject</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>myproject</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.3.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </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>

web 項目 contoller 例子

mvn dependency:tree 查看項目依賴樹

在建好的項目中創建一個簡單的 controller 例子


@RestController
@EnableAutoConfiguration
public class Example {

    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }

    public static void main(String[] args) throws Exception {
        SpringApplication.run(Example.class, args);
    }

}

然後在項目根目錄下執行命令


mvn spring-boot:run

啓動 web 服務,然後在瀏覽器上打開 localhost:8080 查看內容。

打 war 包

和 spring 項目類似,執行 mvn package,會在 target 目錄下生成 war 包。

github 上 spring boot demo :https://github.com/lzx2011/springBootPractice

參考資料

spring boot 官方文檔

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章