SpringBoot的创建和使用

简介: SpringBoot的创建和使用

一、什么是Spring Boot?为什么要学?🍭

Spring 的诞生是为了简化 Java 程序的开发的,而Spring Boot 的诞⽣是为了简化Spring程序开发的。

Spring Boot是一个轻量级的框架,它能够帮助开发者快速构建基于Spring框架的应用程序。相比于传统的Spring框架,在使用Spring Boot时,我们不需要进行大量的配置和集成,而是可以通过简单的注释和代码来实现自动化配置和集成。所以对于这个颠覆式的改变,我们把它叫做Spring Boot,但其最核心的还是Spring。

Spring Boot有以下几个优点:

  1. 快速集成框架,Spring Boot 提供了启动添加依赖的功能,用于秒级集成各种框架。
  2. 内置运行容器,无需配置 Tomcat 等 Web 容器,直接运行和部署程序
  3. 快速部署项目,无需外部容器即可启动并运行项目。
  4. 可以完全抛弃繁琐的 XML,使用注解和配置的方式进行开发。
  5. ⽀持更多的监控的指标,可以更好的了解项目的运行情况。

二、Spring Boot 项目创建🍭

1、安装Spring Boot Helper🍉

Idea 社区版(其他版本也同样适用),要先安装 Spring Boot Helper 插件才能创建 Spring Boot 项目,如下图所示:

image.png

安装好之后,它的名字就变成了 Spring Initializr and Assistant,如下图所示:

image.png

这个插件在 idea 社区版 2022.1.x 之前都免费,idea 2022.2.x 之后开始收费了,所以说版本太高也不一定是好事,有可能要花钱。

如果你的是破解版,是不需要安装这个插件的。

虽然我的是破解版,但我也会将社区版的细节都说到,下面开始创建项目。

2、创建Spring Boot 项目🍉

Ⅰ、熟悉的New Project🍓

image.png

Ⅱ、创建Spring Boot即相关配置选项🍓

image.png

image.png


小知识: 发布 Spring Boot 2要求的最低 JDK 8.。2022.12 发布了 Spring Boot 3基于 Spring 6要求的最低 JDK 版本 17.

Ⅲ、快速添加依赖🍓

image.png

Lombok

Lombok是一个通过注解以达到减少代码的Java库。在Spring框架中,Lombok可以用来减少Java类中的冗长的getter、setter方法、构造函数等代码的编写,从而提高开发效率。

Lombok提供了很多实用的注解,包括 @Data、@Getter、@Setter、@NoArgsConstructor、@AllArgsConstructor 等等,这些注解可以自动生成对应的方法,使得Java类的编写更加简洁明了。例如,使用@Data注解可以自动生成getter、setter方法、equals方法、hashCode方法和toString方法。

除此之外,Lombok还提供了许多其他有用的注解,如@Builder可以帮助我们快速构建复杂的Java对象,@Slf4j可以自动生成日志记录器等等。总之,Lombok可以帮助我们更加便捷地编写Java代码,提高开发效率,减少代码量。

需要注意的是,由于Lombok会修改Java字节码,因此在使用Lombok时需要安装相应的插件或者添加相关的依赖,以确保在运行时能够正确地加载生成的代码。

到Spring日志文件的时候我会详细讲解,现在先简单了解,知道Lombok有什么用即可

image.png

添加其他依赖,也是类似的,但是现在就只需添加这三个,如果你添加了多余的依赖,因为Spring Boot有自动装配的机制,可能会导致你的项目启动不起来。

千万注意选择2.x的Spring Boot版本

image.png

点击 Finish 就完成 Spring Boot 的项目创建了,在pom.xml就可以看见我们添加的依赖。

image.png

Ⅳ、注意事项🍓

第⼀次打开 Spring Boot 项目需要加载很久,因为当前 Spring Boot 框架并没有在自己的本地仓库(上面四个依赖在你本地都没有,需要下载)。

为了加速 Spring Boot 项⽬的下载,在打开项目之前,请先确认自己的 Maven 已经配置为国内源:

image.png

国内 Settings.xml 的配置信息如下:


"1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <pluginGroups>
    pluginGroups>
    <proxies>
    proxies>
    <servers>
    servers>
    <mirrors>
        <mirror>
            <id>alimavenid>
            <name>aliyun mavenname>
            <url>http://maven.aliyun.com/nexus/content/groups/public/url>
            <mirrorOf>centralmirrorOf>
        mirror>
    mirrors>
    <profiles>
    profiles>
settings>

初始化:

image.png

如果你创建之后的.java文件是橙色的,说明这个项目你创建好了,但是没有初始化好。

下面来手动初始化:

image.png

选择Maven:

image.png

这样操作之后,idea才会使用Maven的形式来加载整个项目。加载之后:

image.png

这样就初始化完成了。

3、项目目录介绍和运行🍉

Ⅰ、目录介绍🍓

image.png

Spring Boot 项目有两个主要的目录:

  • src/main/java 为 Java 源代码。
  • src/main/resources 为静态资源或配置文件:
  • /static:静态资源文件夹;
  • /templates:模版资源文件夹

上面这些划线的文件可以直接删除:

image.png

按住Ctrl多选,右键点击删除就行。删除之后:

image.png

Ⅱ、运行hello word🍓

SpringBootdemoApplication(启动类)


package com.example.springbootdemo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication//SpringBoot项目的入口 启动注解
public class SpringBootdemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(SpringBootdemoApplication.class, args);
    }
}

在 SpringBootdemoApplication同文件夹下 创建一个TestController类


package com.example.springbootdemo;
import org.springframework.stereotype.Controller;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
@Controller//当前类为控制器
@ResponseBody//返回的是数据,而非页面
/*@RestController*/ //复合注解 = @Controller+@ResponseBody
public class TestController {
    //请求映射 url 路由注册
    @RequestMapping("hi")
    public String sayHi(String s){
        //为空为null 默认值处理
        //if (s==null||s.equals("")){}   正常写法
        if(!StringUtils.hasLength(s)){  //Spring中更简单的写法 判断是否有长度
            s="张三";
        }
        return "你好"+s;
    }
}

运行启动类的main方法,记得是运行启动类,运行之后:

控制台信息:

image.png

随便去一个浏览器访问 localhost:8080/路由id  访问

image.png

也可以通过 127.0.0.1:8080/路由id  访问

image.png

上面是s为空,默认值,也可以自己传值:

image.png

Ⅲ、注意事项 :包路径错误🍓

我们尝试将 TestController 移动到其他包下,比如以下方式:

image.png

运行我们的项目,发现程序报错了,如下图所示:

image.png

这说明 Spring Boot 项目没有将对象注入到容器中。

正确路径:

image.png

这时候 Spring Boot 项目才能正常的将 bean 注入到容器中。

小结:约定大于配置🍓

以上情况反应了 Spring Boot 项目的另⼀个特点: 约定⼤于配置

对比 Spring 的项目我们也可以看到这⼀特点,比如在 Spring 中也是要配置 Bean 的扫描路径的,而 Spring Boot 则不需要,Spring 配置如下:

image.png

三、网页版创建Spring Boot项目(第二套方案)🍭 不使用 Idea 也可以创建 Spring Boot 项⽬,我们可以使用 Spring 官方提供的网页版来创建 Spring Boot 项目。还在但你实在创建不了的时候,可以通过网页去创建Spring Boot项目。 网页版创建项目先访问:start.spring.io ,如下图所示:

image.png

添加依赖

image.png

点击下载,会下载一个压缩包

image.png

下载之后,解压缩(为了方便,我就直接放在桌面)

image.png

可以看到,这里和我们idea里面创建的是一样的,一样的,可以把下面这些用不到的文件删除(当然也可以不删)

image.png

删完之后复制路径(路径里面不要出现中文)

image.png

然后通过idea去打开,可能还需要初始化一会,可以看到下面,项目初始化完成

image.png

启动项目,发现它没有自动关闭,就是创建完成了

image.png

可以将这个网页版放在自己电脑中,别去删除它,以防哪天突然创建不了,以备不时之需。



相关文章
|
Java 数据库连接 Maven
IDEA搭建springboot项目
本文介绍如何使用idea来搭建一个springboot项目。
2442 0
IDEA搭建springboot项目
|
8月前
|
IDE Java 关系型数据库
如何利用Spring Initializr快速搭建项目
通过Spring Initializr可快速搭建Spring Boot项目。访问官网,配置项目信息,选择依赖(如Web、MyBatis、MySQL等),生成并下载项目压缩包,解压后导入IDE,自动构建完成,快速高效地初始化标准项目结构,提升开发效率。(238字)
894 3
|
Java 测试技术 Maven
SpringBoot2.0入门(详细文档)(上)
SpringBoot2.0入门(详细文档)(上)
|
Java Maven Spring
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
这篇文章介绍了在IntelliJ IDEA社区版中创建Spring Boot项目的三种方法,特别强调了第三种方法的详细步骤。
16885 0
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
|
Java Maven Spring
如何在idea中创建Springboot项目? 手把手带你创建Springboot项目,稳!
文章详细介绍了在IDEA中创建Spring Boot项目的过程,包括选择Spring Initializr、配置项目属性、选择Spring Boot版本、导入依赖、等待依赖下载以及项目结构简介。
23256 1
|
Java Maven 开发工具
IDEA使用Spring Initializr流畅的创建springboot项目
IDEA使用Spring Initializr流畅的创建springboot项目
1563 0
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
2417 0
|
Java Spring
面对Spring 不支持java8的改变方法
面对Spring 不支持java8的改变方法
|
Java 测试技术 Maven
SpringBoot(一)之初始化
spring-boot-maven-plugin 是 Spring Boot 提供的一个 Maven 插件,用于将 Spring Boot 应用程序打包成可执行的 JAR 文件或者 WAR 文件,并提供了一些其他功能,如运行应用程序、生成和处理资源文件等。
781 0
|
安全 Java 应用服务中间件
新版idea(2023)创建spring boot3项目
新版idea(2023)创建spring boot3项目
4188 2