SpringBoot 快速入门(保姆级详细教程)
目录
一、Springboot简介
二、SpringBoot 优点:
三、快速入门
1、新建工程
方式2:使用Spring Initializr创建项目

写在前面:
SpringBoot 是 Spring家族中的一个全新框架,用来简化spring程序的创建和开发过程。SpringBoot化繁为简,使开发变得更加的简单迅速。
一、Springboot简介
SpringBoot 是由 Pivotat 团队提供的全新框架,其设计的目的就是为了简化 Spring 应用的初始搭建以及开发过程,该框架使用了特定的方式来进行配置,从而使开发人员不在需要定义样板的配置。
SpringBoot官网:https://spring.io/projects/spring-boot/
Spring Boot 可以轻松创建可以“直接运行”的独立的、生产级的基于 Spring 的应用程序。
Spring Boot 基于 Spring 开发 Spring Boot 本身并不提供 spring 框架的核心特性以及扩展功能,只是用于快速敏捷地开发新一代基于 Spring 框架的应用程序。Spring Boot 以 约定大于配置的核心思想,默认帮我们进行了很多设置,多数 Spring Boot 应用只需要很少的 Spring 配置,集合可以零配置开箱即用。
约定优于配置(Convention over Configuration),又称按约定编程,是一种软件设计范式
简单来说就是Spring Boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,Spring Boot整合了所有的框架 。
二、SpringBoot 优点:
-
快速创建独立运行的
Spring项目以及与主流框架集成、 -
使用嵌入式的Servlet容器,应用无需打成WAR包
-
Starters自动依赖与版本控制
-
大量的自动配置,简化开发,也可修改默认值
-
无需配置XML,无代码生成,开箱即用
-
准生产环境的运行时应用监控
-
与云计算的天然集成
三、快速入门
方式1:使用IDEA创建项目(推荐)
1、新建工程
1.在菜单点击 File >New >Project 创建一个新的 Spring Intiializr 项目

国内的阿里镜像:https://start.aliyun.com/


经过以上步骤后就创建了如下结构的模块,它会帮我们自动生成一个 Application 类

2.创建 Conroller 控制器
package com.javaclass.demo.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/hello")
public class HelloWordController {
@GetMapping("/world")public String world(){return "JAVA学习课堂,欢迎您!!";}
}
3.启动服务:
运行 SpringBoot 工程不再需要使用本地的 Tomcat ,因为 SpringBoot 内置了 Tomcat,只需要运行项目下的 Application 启动类即可。


通过上面的入门案例我们可以看到使用 SpringBoot 进行开发,使整个开发变得很简单。
pom.xml 配置文件中的内容详解
<?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><groupId>com.JAVAClass</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version><name>demo</name><description>Demo project for Spring Boot</description><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><spring-boot.version>2.6.13</spring-boot.version></properties><dependencies><!--该依赖就是我们在创建 SpringBoot 工程勾选的那个 Spring Web 产生的--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring-boot.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>
<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin><!--这个插件是在打包时需要的--><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.version}</version><configuration><mainClass>com.javaclass.demo.SpringBootDemoApplication</mainClass><skip>true</skip></configuration><executions><execution><id>repackage</id><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build>
</project>
Spring和SpringBoot对比

方式2:使用Spring Initializr创建项目
官网地址如下:https://start.spring.io/

然后操作与在Idea中类似,创建完成后会生成一个文件夹压缩包,打开即可,与Idea创建的一模一样

关注 “JAVA学习课堂” 微信公众号,获取更多学习笔记。

相关文章:
SpringBoot 快速入门(保姆级详细教程)
目录 一、Springboot简介 二、SpringBoot 优点: 三、快速入门 1、新建工程 方式2:使用Spring Initializr创建项目 写在前面: SpringBoot 是 Spring家族中的一个全新框架,用来简化spring程序的创建和开发过程。SpringBoot化繁…...
【第18章】Vue实战篇之登录界面
文章目录 前言一、数据绑定1. 数据绑定2. 数据清空 二、表单校验1. 代码2. 展示 三、登录1.登录按钮2.user.js3. login 四、展示总结 前言 上一章完成用户注册,这一章主要做用户登录。 一、数据绑定 登录和注册使用相同的数据绑定 1. 数据绑定 <!-- 登录表单 -…...
[C++]使用C++部署yolov10目标检测的tensorrt模型支持图片视频推理windows测试通过
【测试通过环境】 vs2019 cmake3.24.3 cuda11.7.1cudnn8.8.0 tensorrt8.6.1.6 opencv4.8.0 【部署步骤】 获取pt模型:https://github.com/THU-MIG/yolov10训练自己的模型或者直接使用yolov10官方预训练模型 下载源码:https://github.com/laugh12321/yol…...
分享uniapp + Springboot3+vue3小程序项目实战
分享uniapp Springboot3vue3小程序项目实战 经过10天敲代码,终于从零到项目测试完成,一个前后端分离的小程序实战项目学习完毕 时间从6月12日 到6月22日,具有程序开发基础,第一次写uniapp,Springboot以前用过,VUE3也…...
Ubuntu 24.04安装zabbix7.0.0图形中文乱码
当zabbix安装完成后,设置中文界面时,打开图形,中文内容会显示方框乱码,是因为服务器字体中没有相关的中文字体,需要更换。 1、找到中文字体,可以在网络上下载《得意黑》开源字体,也可以在windo…...
MybatisPlus 调用 原生SQL
方式一 DemoMapper.java Mapper public interface DemoMapper extends BaseMapper<TableConfig> {Update("${sql}")int createTable(Param("sql") String sql); }测试代码 SpringBootTest class DemoMapperTest {Resourceprivate DemoMapper demo…...
1.SG90
目录 一.实物图 二.原理图 三.简介 四.工作原理 一.实物图 二.原理图 三.简介 舵机(英文叫Servo),是伺服电机的一种,伺服电机就是带有反馈环节的电机,这种电机可以进行精确的位置控制或者输出较高的扭矩。舵机…...
【yolov8语义分割】跑通:下载yolov8+预测图片+预测视频
1、下载yolov8到autodl上 git clone https://github.com/ultralytics/ultralytics 下载到Yolov8文件夹下面 另外:现在yolov8支持像包一样导入,pip install就可以 2、yolov8 语义分割文档 看官方文档:主页 -Ultralytics YOLO 文档 还能切…...
基于STM8系列单片机驱动74HC595驱动两个3位一体的数码管
1)单片机/ARM硬件设计小知识,分享给将要学习或者正在学习单片机/ARM开发的同学。 2)内容属于原创,若转载,请说明出处。 3)提供相关问题有偿答疑和支持。 为了节省单片机MCU的IO口资源驱动6个数码管&…...
Jlink下载固件到RAM区
Jlink下载固件到RAM区 准备批处理搜索exe批处理读取bin数据解析调用jlink批处理准备jlink脚本 调用执行 环境:J-Flash V7.96g 平台:arm cortex-m3 准备批处理 搜索exe批处理 find_file.bat echo off:: 自动识别脚本名和路径 set "SCRIPT_DIR%~dp…...
Kotlin基础——Typeclass
高阶类型 如在Iterable新增泛型方法时 interface Iterable<T> {fun filter(p: (T) -> Boolean): Iterable<T>fun remove(p: (T) -> Boolean): Iterable<T> filter { x -> !p(x) } }对应的List、Set实现上述方法时仍需要返回具体的类型 interfac…...
DC-DC 高压降压、非隔离AC-DC、提供强大的动力,选择优质电源芯片-(昱灿)
畅享长续航,尽在我们的充电芯片! 无论是手机、平板还是智能设备,长时间使用后电量不足总是令人头疼。然而,我们的充电芯片将为您带来全新的充电体验!采用先进的技术,我们的充电芯片能够提供快速而稳定的充电…...
GPT-4o的视觉识别能力,将绕过所有登陆的图形验证码
知识星球🔗除了包含技术干货:《Java代码审计》《Web安全》《应急响应》《护网资料库》《网安面试指南》还包含了安全中常见的售前护网案例、售前方案、ppt等,同时也有面向学生的网络安全面试、护网面试等。 我们来看一下市面上常见的图形验证…...
【LinuxC语言】进程间的通信——管道
文章目录 前言不同进程间通信的方式管道匿名管道和命名管道半双工与全双工管道相关函数创建管道总结前言 在Linux操作系统中,进程是执行中的程序的实例。每个进程都有自己的地址空间,数据栈以及其他用于跟踪进程执行的辅助数据。操作系统管理这些进程,并通过调度算法来分享…...
CompletableFuture 基本用法
一、 CompletableFuture简介 CompletableFuture 是 Java 8 引入的一个功能强大的类,用于异步编程和并发处理。它提供了丰富的 API 来处理异步任务的结果,支持函数式编程风格,并允许通过链式调用组合多个异步操作。 二、CompletableFuture中…...
网页如何发布到服务器上
将网页发布到服务器上的过程涉及多个步骤,包括准备阶段、选择托管提供商、发布网站等。12 准备阶段: 确保在本地开发环境中对网站进行了充分的测试,包括功能测试、性能测试和安全测试。 检查Web.config文件,确保所有的配置设置…...
Jenkins简要说明
Jenkins 是一个开源的持续集成和持续部署(CI/CD)工具,广泛用于自动化软件开发过程中的构建、测试和部署等任务。它是基于Java开发的,因此可以在任何支持Java的平台上运行,并且能够与各种操作系统、开发工具和插件无缝集…...
C# 比较基础知识:最佳实践和技巧
以下是一些在 C# 中进行比较的技巧和窍门的概述。 1. 比较原始类型 对于原始类型(int、double、char 等),可以使用标准比较运算符。 int a 5; int b 10; bool isEqual (a b); // false bool isGreater (a > b); // false bool is…...
Ansible 自动化运维实践
随着 IT 基础设施的复杂性不断增加,手动运维已无法满足现代企业对高效、可靠的 IT 运维需求。Ansible 作为一款开源的自动化运维工具,通过简洁易用的 YAML 语法和无代理(agentless)架构,极大简化了系统配置管理、应用部…...
红队攻防渗透技术实战流程:中间件安全:IISNGINXAPACHETOMCAT
红队攻防渗透实战 1. 中间件安全1.1 中间件-IIS-短文件&解析&蓝屏等1.2 中间件-Nginx-文件解析&命令执行等1.2.1 后缀解析 文件名解析1.2.2 cve_2021_23017 无EXP有POC1.2.3 cve_2017_7529 意义不大1.3 中间件-Apache-RCE&目录遍历&文件解析等1.3.1 cve_20…...
实战演练,在快马平台用openclaw命令构建日志分析监控系统
今天想和大家分享一个很实用的技术实践——如何在InsCode(快马)平台上快速搭建一个日志分析监控系统。这个系统主要利用了openclaw命令的强大功能,能够帮助我们高效处理服务器日志数据。 系统整体设计思路 这个日志分析系统主要包含三个核心部分:日志展…...
利用快马平台五分钟搭建openmaic网页版图像描述演示原型
最近在调研多模态AI框架时,发现OpenMAIC这个开源项目很有意思。它整合了视觉理解和文本生成能力,特别适合做图像描述这类应用。不过对于想快速验证效果的新手来说,本地部署整套环境还是有点门槛。正好发现InsCode(快马)平台能极速搭建演示原型…...
告别‘看图说话’:实战中雷达脉内调制信号的自动化特征提取与识别思路
雷达脉内调制信号自动化特征提取实战指南 在电子侦察和频谱监测领域,人工判读雷达信号的时频图正逐渐成为效率瓶颈。当面对海量采集数据时,如何从STFT生成的时频矩阵中自动提取具有判别力的特征,成为提升分析效率的关键突破点。本文将分享一套…...
告别Fiddler和Charles,用Proxyman在Android 13上抓HTTPS包(附network_security_config.xml配置)
移动端开发者必备:Proxyman在Android 13上的HTTPS抓包实战指南 如果你是一名移动端开发者,一定遇到过这样的场景:应用在测试环境中表现良好,但上线后却出现各种网络请求异常。传统的Fiddler和Charles虽然功能强大,但在…...
精准采集工程机械比例阀电流:IPEhub2+比例阀分流计实现PWM滤波与远程监控
自从“一带一路”和“新基建”计划被实施以来,工程机械的需求量呈现出快速增长的趋势,而关于工程机械,其比例阀控制问题不容忽视。比例阀是一种新型液压控制装置——在普通压力阀、流量阀和方向阀上,用比例电磁铁替代原有的控制部…...
OpenCode-Tokenscope 安装和使用指南
OpenCode-Tokenscope 安装和使用指南全面的 OpenCode AI 会话 token 使用分析和成本追踪插件安装 方法 1: npm (推荐) 步骤 1: 全局安装 npm install -g ramtinj95/opencode-tokenscope步骤 2: 配置 opencode.json 在以下位置之一创建 opencode.json: 项目根目录~/.…...
dify可以干什么
Dify 是一个开源的大模型(LLM)应用开发平台,旨在帮助你快速构建、管理和部署生成式 AI 应用,而无需从零开始写代码。简单来说,你可以把它理解为一个可视化的 AI 应用“工作台”,通过拖拉拽的方式࿰…...
别再只用WPF自带的DragDrop了!手把手教你从零封装一个可拖拽合并数据的自定义控件
突破WPF原生拖拽限制:构建高定制化数据合并控件的实战指南 在构建现代企业级桌面应用时,拖拽交互已成为提升用户体验的关键要素。WPF虽然提供了基础的DragDrop API,但当我们需要实现类似看板系统中卡片合并、数据聚合等复杂交互时,…...
终极指南:如何利用Storybook实现集中式日志组件管理
终极指南:如何利用Storybook实现集中式日志组件管理 【免费下载链接】storybook Storybook is the industry standard workshop for building, documenting, and testing UI components in isolation 项目地址: https://gitcode.com/GitHub_Trending/st/storybook…...
盘点 | 2026顶会顶刊机器人触觉:聚焦五条技术主线
2026年顶会顶刊释放的五大「触觉」关键信号 ——从静态识别到动态闭环 目录 01 元学习赋能机器人触觉识别,精度与泛化性俱佳 ICRA2026 | Tactile Recognition of Both Shapes and Materials with Automatic Feature Optimization-Enabled Meta Learning 研究方…...
