SpringBoot Web 入门指南:从零搭建第一个SpringBoot程序

发布于:2025-09-04 ⋅ 阅读:(13) ⋅ 点赞:(0)

SpringBoot Web 入门指南:从零搭建第一个SpringBoot程序

一、Web开发基础:静态/动态资源与B/S、C/S架构解析​

资源类型

类型 描述 示例 主要职责
静态资源 服务器上存储的固定不变的数据 HTML, CSS, JS, 图片, 视频 页面展示
动态资源 服务器根据请求动态生成的内容 Spring框架, Servlet, JSP 逻辑处理

系统架构

架构模式 全称 特点 优缺点
B/S架构 Browser/Server (浏览器/服务器) 客户端只需浏览器 维护方便,但体验一般
C/S架构 Client/Server (客户端/服务器) 需专用客户端软件 体验不错,但开发维护麻烦

二、Spring 与 Spring Boot 核心介绍

1. Spring 框架

一个强大的、开源的 Java 应用程序开发框架容器,提供一站式企业级应用开发解决方案。

Spring官方网站

核心思想

  • 控制反转 (IoC):将对象的创建和管理权交给容器
  • 依赖注入 (DI):容器自动注入对象所需的依赖

主要优势

  • 松耦合设计:组件间依赖关系减弱,提高灵活性
  • 易于测试:依赖注入使单元测试更简单
  • 模块化结构:可按需选择使用不同功能模块

2. Spring Boot

Spring 框架的扩展,旨在简化 Spring 应用的初始搭建和开发过程

核心特性

  1. 自动配置:根据依赖智能配置应用
  2. 起步依赖:预置依赖组合,解决版本冲突
  3. 内嵌服务器:打包成可执行 JAR,包含内嵌服务器
  4. 开箱即用:几乎零配置快速创建生产级应用

设计理念
“约定大于配置” - 减少决策点,提高开发效率


3. 对比总结

特性 Spring Framework Spring Boot
定位 基础框架,提供全面解决方案 开发加速器,简化Spring使用
配置方式 需要大量显式配置 约定大于配置,自动配置
依赖管理 手动管理依赖和版本 Starter 一站式依赖管理
部署方式 打包成WAR,需外部服务器 可执行JAR,内嵌服务器
主要优势 灵活性高、可定制性强 开发快速、易于上手
适用场景 需要高度定制的复杂应用 快速开发、微服务、原型验证

Spring 是引擎和底盘(提供核心能力)
Spring Boot 是预装好的整车(基于Spring,提供开箱即用的体验)

三、Spring Boot入门

1.在IDEA里面创建一个Spring Boot项目

在这里插入图片描述

注意选项:
语言Java、类型Maven,打包Jar

下一步之后选择web里面的Spring Web(此处我选的Spring Boot是3.5.5版本)
在这里插入图片描述
点击创建,下面界面(第一次创建的时候会下载依赖,需要等待一会)
在这里插入图片描述

2. 运行第一个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>

    <!--  父工程  -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.5.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <!--  项目坐标    -->
    <groupId>com.example</groupId>
    <artifactId>springboot-web-1</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springboot-web-1</name>
    <description>springboot-web-1</description>

    <url/>
    <licenses>
        <license/>
    </licenses>
    <developers>
        <developer/>
    </developers>
    <scm>
        <connection/>
        <developerConnection/>
        <tag/>
        <url/>
    </scm>

    <!--  JDK版本  -->
    <properties>
        <java.version>21</java.version>
    </properties>

    <!--  项目依赖  -->
    <dependencies>
        <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>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>
(1)启动类

在src的main方法里面有个Application的文件,这是一个启动类,当我们运行main方法的时候就可以启动这个项目
在这里插入图片描述

(2)请求处理类

@RestController表示当前类是一个请求处理类;

@RequestMapping后面跟请求路径,比如 @RequestMapping("/hello")

package com.example.springbootweb1;

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

@RestController//表示当前类是一个请求处理类
public class HelloController {

    @RequestMapping("/hello")
    public String hello(String name){
        System.out.println("name : " + name);
        return "Hello" + name + "~";
    }
}
(3)运行项目

运行Application里面的main方法
在这里插入图片描述
出现以下界面就说明运行成功
在这里插入图片描述

红线划的部分是端口号(默认是8080),此处我用的8081不影响

在浏览器中发送请求localhost:8081/hello?name=Spring%20Boot即可成功运行项目

在这里插入图片描述