SpringBoot简化了Spring应用的初始框架搭建和开发过程,利用SpringBoot框架可以快速的进行Spring应用的开发,SpringBoot具有以下特性:

  1. 能够快速创建基于Spring的应用程序。
  2. 提供了约定好的初始POM来简化Maven配置,让Maven配置变得更简单。
  3. 多数情况可以直接使用注解开发来替代xml配置。
  4. 自动配置Spring、SpringMVC等Maven依赖。

Hello World

一、创建一个空的SpringBoot工程

1、在IDEA中创建一个空的project,便于管理项目中的各个Module: File > New > Project... > Empty Project

2、创建基于SpringBoot框架的Module: New > Module > Spring Initializr ,Module信息示例:

  • Group:包路径,如com.yun.demo。
  • Artifact:Module名称,如demo-001-helloworld。
  • Package:IDEA会根据填写的Artifact名称(即Module名称)自动生成一级目录,我们一般会把最后一级的包名删掉。
  • 其他:直接默认就好。

然后依次选择 Web > Spring WebSpring Boot 的版本一般默认就好,但是也可以根据自身需要选择一个稳定的版本,最后一步时,注意新建Module的目录 Content root 可能需要自己手动修改一下,它默认是你新建Module时鼠标选中的目录。最后点击finish之后,一个简单的SpringBoot框架就创建好了,它的程序入口就在src目录下自动创建好的 xxxApplication 类中。新创建Module目录如下(controller包是我自己手动创建的):

二、编写SpringMVC程序输出Hello World

使用SpringBoot创建一个SpringMVC应用程序非常之简单,创建Module的时候,它就已经自动配置好了SpringMVC的所有基础POM依赖,也自动集成了Tomcat,我们只需要编写一个controller类即可。不过需要注意的是,我们创建的所有包和文件都必须在启动类 xxxApplication 同级或以下目录。例如在上图的controller包中创建一个HelloController类,编码如下,然后直接运行xxxApplication类的main方法,在浏览器中输入http://localhost:8080/hello即可。

package com.yun.demo.controller;

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

// 使用@Controller表名这是一个控制类
@Controller
public class HelloController {
    // 指定请求路径
    @RequestMapping(value="/hello")
    // 将返回内容包装为响应体
    @ResponseBody
    public String hello() {
        return "Hello world!";
    }
}

三、默认POM配置

创建SpringBoot框架Module时会自动配置对应的POM依赖,默认配置如下:

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <!--  SpringBoot默认的父工程,也是基于Maven的,里面包含了许多SpringBoot基础的依赖包,
     所以我们才可以直接使用一些Spring注解等基础功能,而不用自己手动配置 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.0</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <!--  定义自己项目的GAV坐标,也可以不用写在<parent>下  -->
    <groupId>com.yun.demo</groupId>
    <artifactId>demo-001-helloworld</artifactId>
    <version>1.0.0</version>

    <!--  项目名称和描述  -->
    <name>demo-001-helloworld</name>
    <description>Demo project for Spring Boot</description>

    <!--  项目使用的Java版本  -->
    <properties>
        <java.version>17</java.version>
    </properties>

    <dependencies>
        <!--  SpringBoot框架的起步依赖  -->
        <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>

    <build>
        <plugins>
            <!--  SpringBoot项目的打包编译插件  -->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

原文地址:http://www.cnblogs.com/guyuyun/p/16846450.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性