ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Java学习第十三部分——Spring Boot

2026/8/27 9:20:46 拓冰建站 浏览量
Java学习第十三部分——Spring Boot

目录

一. 核心概念

二. 主要模块

三. Spring Boot

四. 优势

五. 应用

六.idea项目实战

1.打开idea,新建Spring Boot项目,配置如下图

2.紧接着,跳到添加依赖窗口,选择添加“Spring Boot DevTools”和“Spring Web”依赖

​3.等待下载完成,大约15min

4.如果有示例代码,先编译运行一下,结果如下,一切正常​

5.在 src/main/java/com/example/demo 目录下创建一个新的Java类 HelloController.java,项目结构及代码内容如下

6.在 src/main/java/com/example/demo 目录下创建一个新的Java类 DemoApplication.java,注意!如果已有示例代码,它会提醒不能创建同名文件,可以不需要拷贝代码这一步,因为代码一样的,项目结构及代码如下​

7.打开浏览器访问 http://localhost:8080/hello,结果如下,结束!

七.拓展

(一)在创建Spring Boot项目的idea界面有个“类型”,下面详细介绍​

(二)在创建Spring Boot项目若遇到以下错误​

(三)关于idea项目实战第七步的思考


一. Spring核心概念

   - **Spring **: 是一个开源的 Java 平台,它提供了全面的基础设施支持,用于开发 Java 应用程序。以下是关于 Spring 的一些关键信息:
   - **控制反转(IoC)**:Spring 的核心是 IoC 容器,它负责创建对象、配置对象,并将它们组装在一起。通过 IoC,对象不再需要自己创建依赖,而是由 Spring 容器注入这些依赖,从而降低了类之间的耦合度。
   - **面向切面编程(AOP)**:Spring 支持 AOP,允许开发者将横切关注点(如日志记录、事务管理、安全性等)与业务逻辑分离。通过 AOP,可以在不修改业务逻辑代码的情况下,动态地添加这些功能。
   - **声明式事务管理**:Spring 提供了声明式事务管理,通过简单的注解(如 `@Transactional`)或 XML 配置,可以轻松地管理事务,而无需编写复杂的事务管理代码。

二. Spring主要模块


   - **Spring Core**:提供了 IoC 容器的基本功能,包括 BeanFactory 和 ApplicationContext。
   - **Spring Beans**:提供了 BeanFactory 的实现,用于管理 Bean 的生命周期和依赖注入。
   - **Spring Context**:扩展了 Spring Core,提供了更高级的容器功能,如事件传播、国际化消息支持等。
   - **Spring AOP**:提供了面向切面编程的支持,允许开发者定义切点、通知等。
   - **Spring ORM**:提供了对常见 ORM 框架(如 Hibernate、JPA)的集成支持。
   - **Spring Web**:提供了 Web 应用开发的支持,包括 Spring MVC 和 Spring WebFlux。
   - **Spring Data**:提供了对数据访问的支持,简化了数据库操作,如 Spring Data JPA、Spring Data MongoDB 等。
   - **Spring Security**:提供了安全功能,包括认证、授权、防止常见的安全攻击等。

三. Spring Boot

       Spring Boot 是 Spring 的一个子项目,旨在简化 Spring 应用的初始搭建以及开发过程。它通过“约定大于配置”的理念,自动配置 Spring 和相关技术,从而让开发者能够快速上手。
   - **主要特性**:
     - **自动配置**:Spring Boot 会根据添加的依赖自动配置 Spring 应用。例如,添加 `spring-boot-starter-web` 依赖后,Spring Boot 会自动配置 Spring MVC 和嵌入式 Tomcat。
     - **独立运行**:Spring Boot 应用内嵌了 Tomcat、Jetty 或 Undertow 等服务器,无需部署 WAR 文件。
     - **无需 XML 配置**:Spring Boot 推荐使用 Java 配置,通过注解(如 `@SpringBootApplication`)来定义配置。
     - **微服务支持**:Spring Boot 与 Spring Cloud 结合,可以快速构建微服务架构。

四. Spring优势


   - **降低耦合度**:通过 IoC 和 AOP,Spring 可以将业务逻辑与依赖关系解耦,便于测试和维护。
   - **提高开发效率**:Spring Boot 的自动配置功能减少了大量的配置工作,让开发者可以更专注于业务逻辑。
   - **强大的生态系统**:Spring 拥有丰富的模块和插件,可以满足各种开发需求,如数据访问、安全、消息队列等。
   - **易于测试**:Spring 的组件可以通过 Mock 对象进行单元测试,同时 Spring Boot 提供了测试支持,方便集成测试。

五. Spring应用


   - **企业级应用开发**:Spring 是构建大型企业级应用的首选框架,其强大的功能和模块化设计可以满足各种复杂需求。
   - **微服务架构**:Spring Boot 和 Spring Cloud 提供了构建微服务的完整解决方案,包括服务注册、配置管理、负载均衡等。
   - **Web 应用开发**:Spring MVC 和 Spring WebFlux 提供了灵活的 Web 开发支持,适用于构建 RESTful API 和动态 Web 应用。
   - **数据访问**:Spring Data 提供了对各种数据库的简化操作,支持 JPA、MongoDB、Redis 等。

六.idea项目实战

1.打开idea,新建Spring Boot项目,配置如下图

ps:Java和jdk版本选择合适的即可,不一定要24

2.紧接着,跳到添加依赖窗口,选择添加“Spring Boot DevTools”和“Spring Web”依赖

3.等待下载完成,大约15min

4.如果有示例代码,先编译运行一下,结果如下,一切正常

5.在 src/main/java/com/example/demo 目录下创建一个新的Java类 HelloController.java,项目结构及代码内容如下

package com.example.demo;import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class HelloController {@GetMapping("/hello")public String sayHello() {return "Hello, Spring Boot!";}
}

6.在 src/main/java/com/example/demo 目录下创建一个新的Java类 DemoApplication.java,注意!如果已有示例代码,它会提醒不能创建同名文件,可以不需要拷贝代码这一步,因为代码一样的,项目结构及代码如下

package com.example.demo;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}
}

7.打开浏览器访问 http://localhost:8080/hello,结果如下,结束!

七.拓展

(一)在创建Spring Boot项目的idea界面有个“类型”,下面详细介绍

1. Gradle - Groovy

  • Gradle 是一个构建自动化系统,它使用 Groovy 或 Kotlin 语言编写构建脚本。

  • Groovy 是一种基于 JVM 的动态语言,与 Java 兼容,可以无缝地与 Java 代码交互。

  • 使用 Gradle 的 Groovy 脚本,你可以定义项目的构建逻辑,包括任务、依赖关系等。

  • Gradle 支持增量构建,这意味着它只会重新构建自上次构建以来发生变化的部分,从而提高构建速度。

  • Gradle 还支持依赖管理和多项目构建。

2. Gradle - Kotlin

  • 与 Gradle - Groovy 类似,Gradle - Kotlin 使用 Kotlin 语言编写构建脚本。

  • Kotlin 是另一种基于 JVM 的静态类型语言,由 JetBrains 开发,旨在与 Java 完全兼容,同时提供更简洁和安全的代码。

  • Kotlin 脚本提供了类型安全和更现代的语言特性,如协程、扩展函数等,这使得构建脚本更加健壮和易于维护。

  • 同样,Gradle - Kotlin 也支持增量构建和依赖管理。

3. Maven

  • Maven 是一个项目管理和构建工具,它使用 XML 格式的 pom.xml 文件来描述项目的构建过程和依赖关系。

  • Maven 强调项目对象模型(POM),它定义了项目的基本信息、依赖、构建配置等。

  • Maven 使用标准的生命周期阶段(如 compile、test、package、install、deploy)来管理构建过程。

  • Maven 社区庞大,提供了大量的插件和预定义的构建配置(称为原型),这使得配置新项目变得简单。

  • Maven 同样支持依赖管理和多模块项目。

总结

       Gradle 提供了更灵活和强大的构建配置,而 Maven 则提供了广泛的社区支持和标准化的构建流程。Kotlin 脚本为 Gradle 提供了更现代的语言特性,而 Groovy 则提供了与 Java 更紧密的集成。

(二)在创建Spring Boot项目若遇到以下错误

      这个错误一般与网络连接问题有关,可能是由于网络不稳定、服务器响应慢或本地计算机的性能问题导致的。解决这个问题可能需要检查网络连接,或者尝试在网络状况更好的时候重新下载。

(三)关于idea项目实战第七步的思考

问:为什么不用tomcat?

答:Spring Boot的主要特性包括独立运行——即Spring Boot应用本身就内嵌了Tomcat等服务器,无需配置部署。