IDEA搭建一个SpringBoot入门项目HelloSpringBoot

创建maven工程

建立一个普通的的maven工程,不使用骨架

为了打包方便,最好和环境中jdk版本保持一致

添加起步依赖

SpringBoot要求,项目要继承SpringBoot的起步依赖spring-boot-starter-parent

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

SpringBoot要集成SpringMVC进行controller的开发,所以项目要导入web的启动依赖

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

如果出现错误:-Failure to transfer org.springframework.boot:spring-boot-starter-parent:pom:2.0.1.RELEASE

在pom.xml中将仓库改成:


    <repositories><!-- 代码库 -->
        <repository>
            <id>maven-ali</id>
            <url>http://central.maven.org/maven2/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
                <checksumPolicy>fail</checksumPolicy>
            </snapshots>
        </repository>
    </repositories>

SpringBoot工程热部署

代码实时修改实时生效:代码修改之后就不需要重启服务器就可以生效了
1、pom.xml中添加配置

   <!--热部署配置-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
        </dependency>

2、IDEA中设置自动编译

在这里插入图片描述
然后 Shift+Ctrl+Alt+/,选择Registry
在这里插入图片描述

编写SpringBoot的引导类

package com.itcast;

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

/**
 * @author OceanStar
 * @create 2019-12-02 15:30
 * 要通过SpringBoot提供的引导类起步SpringBoot才可以进行访问
 * @SpringBootApplication 来标注一个主程序类,说明这是一个Spring Boot应用
 */
@SpringBootApplication  // 标注SpringBoot的启动类
public class MySpringBootApplication {
    // java主程序入口
    public static void main(String[] args) {
        // 表示运行SpringBoot的启动类,参数为SpringBoot启动类的字节码对象
        SpringApplication.run(MySpringBootApplication.class);
    }
}


编写Controller

在引导类MySpringBootApplication同级包或者子级包中创建QuickStartController

package com.itcast.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * @author OceanStar
 * @create 2019-12-02 15:37
 */
@Controller
public class QuickStartController {

    @RequestMapping("/quick")
    @ResponseBody
    public String quick(){
        return "SpringBoot 您好";
    }
}

测试

运行,控制台日志如下:
在这里插入图片描述
在这里插入图片描述
通过日志发现,Tomcat started on port(s): 8080 (http) with context path ‘’ tomcat已经起步,端口监听8080,web应用的虚拟工程名称为空
打开浏览器访问url地址为:http://localhost:8080/quick
在这里插入图片描述

部署【插件下载不下来,待研究】

HelloSpringBoot\pom.xml:

    <!--这个插件,可以将应用打包成一个可执行的jar包-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring‐boot‐maven‐plugin</artifactId>
            </plugin>
        </plugins>
    </build>

原理探究

版本仲裁中心

父项目进行版本仲裁
在这里插入图片描述

场景启动器

SpringBoot将所有的功能场景都抽取出来,做成一个个的starters(启动器),只需要在项目里面引入这些starter 相关场景的所有依赖都会导入进来。要用什么功能就导入什么场景的启动器

在这里插入图片描述

主配置类

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值