天天看點

【SpringBoot】SpringBoot基礎-HelloWord執行個體

這是我學習SpringBoot的入門系列哦,歡迎閱讀。

SpringBoot的簡介我就不寫一個篇章來介紹了,相信大家搜尋一下,網上一大堆。

首先,SpringBoot的推出不是用來替代Spirng的,而是精簡Spring的配置的。也就是優化Spirng的。

下面直接上執行個體吧。

環境配置:

win7

Intellij IDEA 使用的是2016 1.2以後的版本

JDK1.8

Maven 3.3.9

Tomcat/8.5.6

建立項目工程

使用IDEA建立一個SpringBoot項目。

第一種建立方式 -使用Spring Initializr的方式

這種方式很簡單。

【SpringBoot】SpringBoot基礎-HelloWord執行個體

注意這裡的URL是: ​​https://start.spring.io​​ , 這個連接配接需要網絡,用來查詢Spring Boot的目前可用版本群組件清單!

然後選擇下一步。

【SpringBoot】SpringBoot基礎-HelloWord執行個體

注意這些地方的選擇!

然後點next。

【SpringBoot】SpringBoot基礎-HelloWord執行個體

在這裡選擇SpringBoot版本和SpringBoot元件!

例如我選擇了Web項目元件。

點next

【SpringBoot】SpringBoot基礎-HelloWord執行個體

OK,這樣就建出了SpringBoot的骨架了!

【SpringBoot】SpringBoot基礎-HelloWord執行個體

SpringBootHelloApplication.java

package cn.hncu;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringBootHelloApplication {

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

pom.xml

它自動生成的SpringBoot!注意,需要的包比較多,如果你以前沒有那些包,可能下載下傳需要一定時間,如果中途網絡不好什麼的,導緻包下載下傳不完全,那麼解決辦法就是把那個包删去,以及pom.xml中對應的語句也删去,然後再重新寫到pom.xml中,重新下載下傳對應的包!我就在這裡被坑過一次!是以總是出現class找不到!

<?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>cn.hncu</groupId>
    <artifactId>springboothello</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>springBoot-Hello</name>
    <description>SpringBoot�HelloWord</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.0.BUILD-SNAPSHOT</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-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

</project>      

第二種建立方式-使用建立Maven的方式

這種方式就是需要我們自己手動多寫一些代碼!

【SpringBoot】SpringBoot基礎-HelloWord執行個體

在這裡我們選擇Maven 的建立方式。在這裡不做過多解釋了。。。

【SpringBoot】SpringBoot基礎-HelloWord執行個體
【SpringBoot】SpringBoot基礎-HelloWord執行個體

現在的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>cn.hncu</groupId>
    <artifactId>springBootHelloM</artifactId>
    <version>1.0-SNAPSHOT</version>


</project>      

修改為

<?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>cn.hncu</groupId>
    <artifactId>springBootHelloM</artifactId>
    <version>1.0-SNAPSHOT</version>

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

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

</project>      
【SpringBoot】SpringBoot基礎-HelloWord執行個體

這個不會幫你建好SpringBoot的骨架!是以要自己建

【SpringBoot】SpringBoot基礎-HelloWord執行個體

SpringBootHelloApplication

package cn.hncu;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * Created with IntelliJ IDEA.
 * User: 陳浩翔.
 * Date: 2017/1/22.
 * Time: 下午 5:25.
 * Explain:
 */
@SpringBootApplication
public class SpringBootHelloApplication {
    public static void main(String[] args) {
        SpringApplication.run(SpringBootHelloApplication.class,args);
    }
}      

使用注解@SpringBootApplication來标注它是一個SpringBoot應用,main方法使它成為了一個主程式。将在應用啟動的時候執行!

這main方法裡面的SpringBootHelloApplication這個類名,必須是使用了 @SpringBootApplication這個注解的類的類名哦。

Hello

package cn.hncu;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * Created with IntelliJ IDEA.
 * User: 陳浩翔.
 * Date: 2017/1/22.
 * Time: 下午 5:27.
 * Explain:
 */
@RestController
public class Hello {
    @RequestMapping("/")
    String home(){
        return "你好,世界";
    }
}      

這個就是springMvc的注解配置了。

等會就是直接通路:​​http://localhost:8080/​​ 然後看網頁上的顯示。

然後,我們直接運作那個main方法!

【SpringBoot】SpringBoot基礎-HelloWord執行個體
【SpringBoot】SpringBoot基礎-HelloWord執行個體
2017-01-22 17:32:23.270  INFO 19888 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2017-01-22 17:32:23.322  INFO 19888 --- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat
2017-01-22 17:32:23.334  INFO 19888 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.6      

使用的Tomcat的通路端口和版本,都可以在輸出的日志中看到!

然後我們通路網址:

​​http://localhost:8080/​​

【SpringBoot】SpringBoot基礎-HelloWord執行個體

我也是第一次使用SpringBoot,怎麼說這個呢,現在給我的感覺就是簡單很多了,以前部署Spring-Web項目是需要很多步驟的,現在變得特别簡單,難怪現在SpringBoot越來越火了啊。确實感覺,小型項目架一個SpringBoot要省很多事。

我用的是Maven的方式建立的哦。

因為用Spring Initializr方式建立的話,就更簡單!pom.xml和SpringBoot的入口程式都不用你寫!

我會繼續學下去,然後把自己的體驗寫出來,加油↖(^ω^)↗,謝謝大家支援.

本系列兩個項目源碼:

​​https://github.com/chenhaoxiang/SpringBoot/tree/master/day1​​



繼續閱讀