一、Spring Boot简介
       Spring Boot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目。它使用习惯优于配置的理念让你的项目快速运行起来,使用Spring Boot很容易创建一个独立运行(运行jar,内置Servlet容器,Tomcat、jetty)、准生产级别的基于Spring框架的项目,使用SpringBoot你可以不用或者只需要很少的配置文件。


二、Spring Boot核心功能
       •    独立运行的Spring项目:可以以jar包形式独立运行,通过java -jar xx.jar即可运行
       •    内嵌Servlet容器:可以选择内嵌Tomcat、Jetty等
       •    提供starter简化maven配置:一个maven项目,使用了spring-boot-starter-web时,会自动加载Spring Boot的依赖包
       •    自动配置Spring:Spring Boot会根据在类路径中的jar包、类,为jar包中的类自动配置Bean
       •    准生产的应用监控:提供基于http、ssh、telnet对运行时的项目进行监控
       •    无代码生成和xml配置:主要通过条件注解来实现


三、Spring Boot项目搭建
    (1)搭建前准备
                  a.使用工具:idea、maven3.9
                  b.配置好maven仓库和nexus私服。
    (2)step 1
                 选择File –> New –> Project –>Spring Initialer –> 点击Next

                 

idea springboot下载失败_springboot项目搭建

    (3)step 2
                 可以自己修改Group(包名)和Artifact(项目名称)以及Version(版本)等信息,然后点击下一步Next。

                 

idea springboot下载失败_idea springboot下载失败_02

Artifact要小写,包含大写会报Artifact contains illegal characters错误。

                 

idea springboot下载失败_idea springboot下载失败_03


    (4)step 3

                我们可以看到一个选择依赖的页面,里面提供了很多常见的依赖,我们想要建立一个Web项目,必须要选择Web下面的Web。

                

idea springboot下载失败_springboot_04

    (5)step 4
                确认好项目名称和地址,点击finish,这样我们就创建好了springboot项目。

                

idea springboot下载失败_springboot项目_05


 

     (6)step 5 

                 项目目录结构如下:                

idea springboot下载失败_spring_06


              目录结构说明:

                       a、/src/main/java/  存放项目所有源代码目录

                       b、/src//main/resources/  存放项目所有资源文件以及配置文件目录

                       c、/src/test/  存放测试代码目录

      (7)step 6
                    项目源码类SpringbootdemoApplication.java

package com.example.springbootdemo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

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

        @SpringBootApplication开启了Spring的组件扫描和springboot的自动配置功能,相当于将以下三个注解组合在了一起
             (1)@Configuration:表名该类使用基于Java的配置,将此类作为配置类。
             (2)@ComponentScan:启用注解扫描。
             (3)@EnableAutoConfiguration:开启springboot的自动配置功能。       (8)step 7
        pom.xml文件信息,里面有spring-boot-starter-web的依赖。

<?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>springbootdemo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

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

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.5.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>

    <!--开发web项目相关依赖-->
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!--springboot单元测试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

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

</project>

      (9)step 8
                  创建一个测试HelloController.java类。

package com.example.springbootdemo;

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

@RestController
@RequestMapping("/hello")
public class HelloController {

    @RequestMapping("hello")
    public String hello() {
        return "Hello this is my first springboot demo";
    }
}

     (10)step 9

                  运行SpringbootdemoApplication类中的main方法,和普通的main一样。出现一下信息说明启动成功:

                  

idea springboot下载失败_idea springboot下载失败_07

    (11)step 10

                   输入:http://localhost:8080/hello/hello运行结果如下:

                   

idea springboot下载失败_springboot项目搭建_08

        至此,springboot项目搭建完美结束。

  • 项目demo代码下载地址:https://github.com/xuhuaguang/springbootdemo.git