SpringBoot3快速入门

这篇具有很好参考价值的文章主要介绍了SpringBoot3快速入门。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SpringBoot3快速入门

准备

知识准备

Spring、SpringMVC、MyBatis、Maven、IDEA

工具版本

java17+ *
SpringBoot:3.1.1 *
IDEA:2021.2.1+ *
Maven:3.6.3+ *
Tomcat:10.0+ *
Servlet:5.0+ *
GraaIVM Community:22.3
Native Build Tools:0.9.23

springBoot简介

SpringBoot3快速入门,SpringBoot3,java,spring boot

SpringBoot帮我们简单、快速的创建一个独立的、生产级别的Spring应用,大多数SpringBoot应用只需要编写少量配置即可快速整合Spring平台以及第三方技术。具有简化开发、简化配置、简化整合、简化部署、简化监控、简化运维等作用。

特性

  • 快速创建独立的Spring应用
    SSM:导包、写配置、启动运行
  • 直接嵌入Tomcat、Jetty or Undertow(无需部署war包)
  • 提供可选的starter(场景启动器),简化应用整合(重点)
    为每种场景准别一个依赖:web-starter、mybatis-starter…
  • 按需自动配置Spring以及第三方库
    如果这些场景我要使用(生效),这个场景的所有配置都会自动配置好。
  • 提供生产级特性:如监控指标、健康检查、外部化配置等
  • 无代码生成、无xml

快速入门

场景:浏览器发送/hello请求,返回"Hello, SpringBoot3!"

开发流程

官网介绍

1、创建maven项目

创建一个空项目

SpringBoot3快速入门,SpringBoot3,java,spring boot

在父项目中创建模块

SpringBoot3快速入门,SpringBoot3,java,spring boot
SpringBoot3快速入门,SpringBoot3,java,spring boot

创建完成

SpringBoot3快速入门,SpringBoot3,java,spring boot

2、配置项目继承

在module的pom.xml中配置项目继承spring-boot-starter-parent

<!--所有springBoot项目都必须继承自spring-boot-starter-parent-->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>3.1.1</version>
</parent>

SpringBoot3快速入门,SpringBoot3,java,spring boot

3、导入场景
<!--如:开发web功能需要的依赖-->
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

SpringBoot3快速入门,SpringBoot3,java,spring boot
SpringBoot3快速入门,SpringBoot3,java,spring boot

4、创建SpringBoot主程序
package com.louis;

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

/**
 * @author XRY
 * @date 2023年07月09日11:39
 * 启动SpringBoot项目的主入口程序
 */
@SpringBootApplication//该注解表述这是一个SpringBoot应用
public class MainApplication {
    public static void main(String[] args) {
        SpringApplication.run(MainApplication.class, args);
    }
}
5、创建控制器(HelloController)
package com.louis.controller;


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

/**
 * @author XRY
 * @date 2023年07月09日11:44
 */
//@ResponseBody用于标识一个控制器方法,可以将该方法的返回值直接作为响应报文的响应体响应到浏览器。
//@RequestMapping注解是一个用来处理请求地址映射的注解,可用于映射一个请求或一个方法,可以用在类或方法上。
//@GetMapping是Spring4.3提供的新注解,它是一个组合注解,等价于@RequestMapping(method = RequestMethod.Get ),用于简化开发
//@RestController:相当于@Controller+@ResponseBody————在页面显示数据

//@ResponseBody
//@Controller

@RestController
public class HelloController {
    @GetMapping("/hello")
    public String hello(){
        return "Hello, Spring Boot3";
    }
}

SpringBoot3快速入门,SpringBoot3,java,spring boot

SpringBoot3快速入门,SpringBoot3,java,spring boot

6、SpringBoot简化部署

jar指令的运行需要依赖maven插件支持。(重要)

<!--SpringBoot应用打包插件-->
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>2.5.4</version>
        </plugin>
    </plugins>
</build>
打包流程

SpringBoot3快速入门,SpringBoot3,java,spring boot
SpringBoot3快速入门,SpringBoot3,java,spring boot

也可以使用mvn clean package 将项目打包成可执行的jar包(注意:在项目目录下打开终端执行,而不是在idea的terminal,并且需要先停掉当前的项目。),我们只需要将这个jar包直接上传到linux的服务器上就可以直接运行,不用安装Tomcat。

SpringBoot3快速入门,SpringBoot3,java,spring boot

按照上图中的提示直接打开jar包所在的目录,在目录位置输入cmd运行。在命令行窗口输入java -jar boot3-01-1.0-SNAPSHOT.jar运行。

SpringBoot3快速入门,SpringBoot3,java,spring boot
SpringBoot3快速入门,SpringBoot3,java,spring boot

注意:想要修改端口号等配置,只需要在jar包同级目录下新建一个application.properties文件,在其中写入相应的内容即可。
SpringBoot3快速入门,SpringBoot3,java,spring boot

特性小结
1、简化整合

只需要导入相关的场景,项目机会拥有相关的功能。即场景启动器。默认支持的所有场景。

SpringBoot3快速入门,SpringBoot3,java,spring boot

  • 官方提供的场景会命名为:spring-boot-starter-*
  • 第三方提供的场景会命名为:*-spring-boot=starter
2、简化开发

无需编写任何配置,直接开发业务。

3、简化配置

想要更改文中的许多配置,只需要在当前文件中(resources)下添加一个application.properties文件,并写入相关配置即可,文档位置。如:定义端口

server.port=999

SpringBoot3快速入门,SpringBoot3,java,spring boot

4、简化部署

打包为为可执行的jar包,只需要Linux服务器上包含java环境即可。

5、简化运维

只需要修改配置(外部放一个application.properties)文件、监控、健康检查。


Spring Initializr创建导向

新建模块

SpringBoot3快速入门,SpringBoot3,java,spring boot

点击next

SpringBoot3快速入门,SpringBoot3,java,spring boot

左边通过选框选择场景,在右边我们可以看到我们选择的内容。

SpringBoot3快速入门,SpringBoot3,java,spring boot

通过这种方式创建的项目,已经包含了核心的starter。

springBoot有一个默认规则:只扫描主程序所在的包及其子包,放在其他位置没有作用。

创建HelloController
package com.louis.controller;

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

/**
 * @author XRY
 * @date 2023年07月09日15:03
 */
@RestController
public class HelloController {
    @GetMapping("/hello")
    public String hello(){
        return "Hello Louie";
    }
}
项目结构

SpringBoot3快速入门,SpringBoot3,java,spring boot

测试

SpringBoot3快速入门,SpringBoot3,java,spring boot文章来源地址https://www.toymoban.com/news/detail-698753.html

到了这里,关于SpringBoot3快速入门的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • springboot3整合consul实现服务注册和配置管理快速入门

    服务注册: 配置管理: 注册中心的比较: 在微服务的世界中,服务注册是必不可少的。现在比较流行的也就是Consul和Nacos,Zookeeper没有管理界面,一般不建议使用,而Eureka已经处于停更,并且本身就存在很多bug,一般不建议使用! 我之前写过一篇spring boot整合nacos实现服务注

    2024年04月16日
    浏览(46)
  • springboot3.2报Spring Boot [3.2.0] is not compatible with this Spring Cloud release train

    这个解决也比较简单: 1、直接把springcloud升级为2023.0.0-RC1就行了 2、第二种,直接进行配置,关闭检查,但是微服务的相关服务可能无法使用,需要自行验证 spring.cloud.compatibility-verifier.enabled=false

    2024年02月20日
    浏览(50)
  • 【Spring Boot】快速入门

            Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid applicat

    2024年02月04日
    浏览(41)
  • SpringBoot3.0新特性:1、spring.factories文件废弃,自动配置包位置变化 2、Spring Native 快速体验 3、jakata api迁移 3、三方库的支持

    有自己写过starter包的友友们一定知道,一定用/META-INF/spring.factories文件定义发现自动配置,但是在springboot 2.7,这个文件就被弃用了,在springboot 3.0 就被彻底移除了。 比如之前定义的/META-INF/spring.factories文件: 而现在 这个/META-INF/spring.factories并不是不存在了,只是在3.0之后 外

    2024年02月10日
    浏览(47)
  • Java21 + SpringBoot3使用spring-websocket时执行mvn package报错

    近日心血来潮想做一个开源项目,目标是做一款可以适配多端、功能完备的模板工程,包含后台管理系统和前台系统,开发者基于此项目进行裁剪和扩展来完成自己的功能开发。 本项目为前后端分离开发,后端基于 Java21 和 SpringBoot3 开发,前端提供了vue、angular、react、uniap

    2024年02月02日
    浏览(69)
  • 【Spring Boot】专栏合集,快速入门大全

    作者简介 前言 作者之前写过一个Spring Boot的系列,包含自动装配原理、MVC、安全、监控、集成数据库、集成Redis、日志、定时任务、异步任务等内容,本文将会一文拉通来总结这所有内容,不骗人,一文快速入门Spring Boot。 专栏地址: https://blog.csdn.net/joker_zjn/category_12439661.

    2024年02月07日
    浏览(48)
  • Java21 + SpringBoot3使用Spring Security时如何在子线程中获取到认证信息

    目录 前言 原因分析 解决方案 方案1:手动设置线程中的认证信息 方案2:使用 DelegatingSecurityContextRunnable 创建线程 方案3:修改 Spring Security 安全策略 通过设置JVM参数修改安全策略 通过 SecurityContextHolder 修改安全策略 总结 近日心血来潮想做一个开源项目,目标是做一款可以适

    2024年02月19日
    浏览(38)
  • Spring Boot集成Graphql快速入门Demo

    GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。GraphQL 并没有和任何特定数据库或者存储引擎绑定,而是依靠你现有的代码和数据支撑。 优势 GraphQL 速度快,并且比较稳定,GraphQL 的操作是在数据层面的,

    2024年04月13日
    浏览(44)
  • Spring Boot快速入门:构建简单的Web应用

      Spring Boot是一个用于简化Spring应用程序开发的框架,它通过提供开箱即用的配置和一组常用的功能,使得构建高效、可维护的应用变得非常容易。在本篇博客中,我们将一步步地介绍如何快速入门Spring Boot,并构建一个简单的Web应用。 步骤1:准备开发环境 Java Development

    2024年02月07日
    浏览(65)
  • 快速入门:使用 Spring Boot 构建 Web 应用程序

    本文将讨论以下主题: 安装 Java JDK、Gradle 或 Maven 和 Eclipse 或 IntelliJ IDEA 创建一个新的 Spring Boot 项目 运行 Spring Boot 应用程序 编写一个简单的 Web 应用程序 打包应用程序以用于生产环境 通过这些主题,您将能够开始使用 Spring Boot 并创建自己的 Web 应用程序。 Spring Boot是一个

    2024年02月07日
    浏览(81)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包