news 2026/7/10 9:59:42

Spring Boot从入门到实战:快速搭建企业级应用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Spring Boot从入门到实战:快速搭建企业级应用

一、Spring Boot 核心优势:为何成为开发者首选?

Spring Boot 是 Spring 生态的 “脚手架”,核心目标是简化配置、提高开发效率,相比传统 Spring 有 3 大核心优势:

  1. 自动配置(AutoConfiguration):根据依赖自动注入 Bean,无需手动编写 XML 或 Java 配置(如引入spring-boot-starter-web自动配置 Tomcat、Spring MVC);
  2. 起步依赖(Starter Dependencies):整合常用依赖(如spring-boot-starter-mybatis包含 MyBatis+Spring 整合所需所有 jar),避免版本冲突;
  3. 嵌入式服务器:内置 Tomcat、Jetty,无需部署 WAR 包,直接运行 JAR 文件;
  4. 无代码生成 + 零 XML 配置:纯 Java 配置,开箱即用。

二、环境准备(2024 最新版)

工具

版本要求

JDK

8/11/17(推荐 17,LTS 版本)

Maven/Gradle

Maven 3.6+ / Gradle 7.0+

IDE

IntelliJ IDEA 2022+ / Eclipse 2023+

Spring Boot

3.2.x(稳定版)

注意:Spring Boot 3.x 仅支持 JDK 17+,若使用 JDK 8 需选择 Spring Boot 2.7.x 版本。

三、快速搭建:第一个 Spring Boot 应用(3 种方式)

方式 1:Spring Initializr(推荐,可视化配置)
  1. 访问官网:https://start.spring.io/
  2. 配置参数:
    • Project:Maven/Gradle
    • Language:Java
    • Spring Boot:3.2.5
    • Group:com.example(包名)
    • Artifact:demo(项目名)
    • Dependencies:勾选「Spring Web」(web 开发核心依赖)
  1. 点击「Generate」下载压缩包,解压后用 IDEA 打开。
方式 2:IDEA 内置工具(更高效)
  1. 打开 IDEA → New Project → Spring Initializr
  2. 填写 Group/Artifact,选择 Spring Boot 版本和依赖(同方式 1)
  3. 点击 Finish,IDEA 自动下载依赖并创建项目。
方式 3:手动创建(理解底层结构)
  1. 新建 Maven 项目,在pom.xml中添加 Spring Boot 父依赖和 web 起步依赖:

统一管理版本和依赖 -->

<groupId>org.springframework.boot</groupId>

>spring-boot-starter-parent</artifactId>

<version>3.2.5 <relativePath/>

</parent>

依赖:自动引入Tomcat、Spring MVC等 -->

<dependencies>

<dependency>

<groupId>org.springframework.boot>

spring-boot-starter-web</artifactId>

>

将项目打包为可执行JAR -->

>

</groupId>

<artifactId>spring-boot-maven-plugin </plugin>

</plugins>

  1. 创建启动类(必须在所有业务类的父包下):

package com.example.demo;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

// 核心注解:包含@ComponentScan(扫描Bean)、@EnableAutoConfiguration(自动配置)

@SpringBootApplication

public class DemoApplication {

public static void main(String[] args) {

// 启动Spring Boot应用

SpringApplication.run(DemoApplication.class, args);

}

}

  1. 创建 Controller 测试:

package com.example.demo.controller;

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

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

// 等同于@Controller + @ResponseBody(返回JSON数据)

@RestController

public class HelloController {

// 接收GET请求,路径为/hello

@GetMapping("/hello")

public String hello() {

return "Hello Spring Boot 3.2!";

}

}

四、运行与测试

  1. 启动应用:右键DemoApplication→ Run(IDEA 会自动启动内置 Tomcat,默认端口 8080);
  2. 测试接口:
    • 浏览器访问:http://localhost:8080/hello
    • Postman 访问:GET 请求上述地址
  1. 成功响应:页面显示Hello Spring Boot 3.2!

五、实战进阶:整合核心组件(企业级常用)

1. 配置文件:application.yml(推荐,简洁易读)

Spring Boot 默认支持application.propertiesapplication.yml,推荐后者,在src/main/resources下创建:

# 服务器配置

server:

port: 8081 # 修改端口(避免冲突)

servlet:

context-path: /demo # 项目前缀(访问需加/demo)

# 自定义配置(可通过@Value注入)

app:

name: SpringBootDemo

version: 1.0.0

2. 整合 MyBatis(操作数据库)
  1. 添加依赖(pom.xml):

atis起步依赖 -->

<dependency>

>org.mybatis.spring.boot</groupId>

>mybatis-spring-boot-starter 0.3

</dependency>

MySQL驱动(Spring Boot 3.x需8.0+) -->

>

com.mysql

-connector-j

</scope>

>

  1. 配置数据库连接(application.yml):

spring:

datasource:

url: jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true

username: root

password: 123456

driver-class-name: com.mysql.cj.jdbc.Driver

# MyBatis配置

mybatis:

mapper-locations: classpath:mapper/*.xml # Mapper.xml文件路径

type-aliases-package: com.example.demo.entity # 实体类别名包

  1. 编写实体类、Mapper 接口和 XML 文件(示例略,核心是 MyBatis 的常规用法,Spring Boot 自动整合无需额外配置)。
3. 全局异常处理

创建全局异常处理器,统一捕获项目中的异常:

package com.example.demo.exception;

import org.springframework.web.bind.annotation.ExceptionHandler;

import org.springframework.web.bind.annotation.RestControllerAdvice;

import java.util.HashMap;

import java.util.Map;

// 全局异常处理:作用于所有@RestController

@RestControllerAdvice

public class GlobalExceptionHandler {

// 捕获RuntimeException

@ExceptionHandler(RuntimeException.class)

public Map, Object> handleRuntimeException(RuntimeException e) {

Map> result = new HashMap();

result.put("code", 500);

result.put("message", e.getMessage());

return result;

}

}

六、常见问题与解决方案

问题现象

解决方案

端口占用(Port 8080 in use)

1. 关闭占用端口的进程;2. 在 application.yml 中修改 server.port

依赖冲突(NoClassDefFoundError)

排除冲突依赖(如通过标签)或升级 Spring Boot 版本

自动配置失效

1. 检查依赖是否正确引入;2. 确保启动类在父包下(@ComponentScan 扫描范围)

数据库连接失败

1. 检查 MySQL 服务是否启动;2. 验证 url、用户名、密码是否正确

七、总结与扩展

Spring Boot 的核心是 “约定优于配置”,通过起步依赖和自动配置减少重复工作,让开发者专注于业务逻辑。本文仅覆盖基础用法,后续可扩展学习:

  1. 整合 Redis、RabbitMQ 等中间件;
  2. 配置 Spring Security 实现权限控制;
  3. 使用 Spring Boot Actuator 监控应用;
  4. 打包部署(Docker 容器化、云服务器部署)。

如果本文对你有帮助,欢迎点赞 + 收藏!有任何问题或补充,欢迎在评论区交流~

(注:文档部分内容可能由 AI 生成)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/9 19:01:10

Open-AutoGLM免Root安装终极指南(仅限高级玩家的隐藏方案)

第一章&#xff1a;Open-AutoGLM免Root使用全景解析Open-AutoGLM 是一款基于轻量级自动化框架设计的智能辅助工具&#xff0c;专为无需 Root 权限的 Android 设备优化。它利用无障碍服务与 Intent 机制实现应用间协同控制&#xff0c;可在不破坏系统安全策略的前提下完成任务自…

作者头像 李华
网站建设 2026/7/10 12:44:32

YOLOv9性能优化与部署实战:从瓶颈诊断到效率跃迁

YOLOv9性能优化与部署实战&#xff1a;从瓶颈诊断到效率跃迁 【免费下载链接】yolov9 项目地址: https://gitcode.com/GitHub_Trending/yo/yolov9 在工业质检、自动驾驶等实时性要求极高的场景中&#xff0c;YOLOv9作为当前最先进的目标检测模型&#xff0c;其原生PyTo…

作者头像 李华
网站建设 2026/7/10 10:55:31

【远程控制新纪元】:基于Open-AutoGLM的WiFi手机操控系统搭建全过程

第一章&#xff1a;远程控制新纪元的开启随着云计算、物联网和5G网络的普及&#xff0c;远程控制技术正迎来前所未有的发展契机。设备间的无缝连接与实时交互已成为现代IT基础设施的核心需求。无论是远程办公、工业自动化&#xff0c;还是智能家居管理&#xff0c;高效的远程控…

作者头像 李华
网站建设 2026/7/10 10:52:13

Dracula主题终极指南:30分钟打造专属深色编程环境

Dracula主题终极指南&#xff1a;30分钟打造专属深色编程环境 【免费下载链接】dracula-theme &#x1f9db;&#x1f3fb;‍♂️ One theme. All platforms. 项目地址: https://gitcode.com/gh_mirrors/dr/dracula-theme 你是否厌倦了刺眼的白色编程界面&#xff1f;Dr…

作者头像 李华
网站建设 2026/7/9 16:49:27

第6篇 | OLT:藏在“小黑屋”里的接入网“司令部”

《固定接入网:光纤的“最后一公里”》 第6篇 01. 引子:深夜的“网络悬案”与背后的隐形大佬 先问你一个扎心的问题: 当你在工作日的晚上八九点,正开着重要的视频会议,或者全家人一起刷剧、打游戏时,突然网络开始“转圈圈”,视频卡成了PPT。你第一反应是怪谁? 99% 的…

作者头像 李华
网站建设 2026/7/10 11:37:49

Chipsbank APTool V7200终极指南:U盘量产与修复完整教程

还在为U盘批量生产而烦恼吗&#xff1f;Chipsbank APTool V7200作为专为Chipsbank控制芯片设计的量产工具&#xff0c;为您提供了一站式的解决方案。这款发布于2020年2月21日的专业工具&#xff0c;让U盘的格式化、固件升级和个性化定制变得前所未有的简单高效。 【免费下载链接…

作者头像 李华