4:SpringBoot-Starter-Java Spring

简介: 4:SpringBoot-Starter-Java Spring

4.1 SpringBoot-Starter介绍

Starter是SpringBoot的一种服务,开发者不需要关注各种依赖库的处理和具体的配置信息

spring-boot-starter-web自动引入一些相关依赖和一些初始化的配置,Spring Boot将自动通过classpath路径下的类发现并加载需要的Bean

4.1 Starter原理

  • Starter实现自动化配置,需要Maven依赖(负责导入jar包)和配置文件
  • Spring Boot 启动时会在classpath寻找starter jar包中的resources/META-INF/spring.factories 配置文件
  • 根据配置文件,找到需要自动加载的类

没有Starter

  • 在Maven中引入使用的库
  • 引入使用的库所依赖的库
  • 在xxx.xml中配置一些属性信息
  • 反复的调试直到可以正常运行

使用Starter

  • 只需要引入一个Starter
  • Starter会把所有用到的依赖都给包含进来,避免了开发者自己去引入依赖所带来的麻烦

4.3 Starter依赖引入

要实现Starter,需要在构建配置文件中添加spring-boot-starter-web依赖项

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
</dependency>

例如在pom文件中添加对autoconfigure模块的依赖,并添加一些其他必要的依赖项

<dependency>
  <groupId>com.test.starter</groupId>
  <artifactId>xxx-spring-boot-autoconfigure</artifactId>
</dependency>

4.4 Starter配置

名称 说明
spring-boot-starter Core starter, including auto-configuration support,logging and YAML (核心Spring Boot starter,包括自动配置支持,日志和YAML)
spring-boot-starter- aop Starter for aspect-oriented programming with Spring AOP and AspectJ(对面向切面编程的支持,包括spring-aop和AspectJ)
spring-boot-starter-cache Starter for using Spring Framework’s caching support(使用 Spring Framework 的缓存支持)

image.png


目录
相关文章
|
1月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
71 2
|
19天前
|
Java 开发者 微服务
Spring Boot 入门:简化 Java Web 开发的强大工具
Spring Boot 是一个开源的 Java 基础框架,用于创建独立、生产级别的基于Spring框架的应用程序。它旨在简化Spring应用的初始搭建以及开发过程。
38 6
Spring Boot 入门:简化 Java Web 开发的强大工具
|
19天前
|
负载均衡 Java 开发者
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
62 5
|
1月前
|
人工智能 前端开发 Java
基于开源框架Spring AI Alibaba快速构建Java应用
本文旨在帮助开发者快速掌握并应用 Spring AI Alibaba,提升基于 Java 的大模型应用开发效率和安全性。
基于开源框架Spring AI Alibaba快速构建Java应用
|
2月前
|
前端开发 Java 数据库连接
Spring 框架:Java 开发者的春天
Spring 框架是一个功能强大的开源框架,主要用于简化 Java 企业级应用的开发,由被称为“Spring 之父”的 Rod Johnson 于 2002 年提出并创立,并由Pivotal团队维护。
76 1
Spring 框架:Java 开发者的春天
|
2月前
|
Java 数据库连接 开发者
Spring 框架:Java 开发者的春天
【10月更文挑战第27天】Spring 框架由 Rod Johnson 在 2002 年创建,旨在解决 Java 企业级开发中的复杂性问题。它通过控制反转(IOC)和面向切面的编程(AOP)等核心机制,提供了轻量级的容器和丰富的功能,支持 Web 开发、数据访问等领域,显著提高了开发效率和应用的可维护性。Spring 拥有强大的社区支持和丰富的生态系统,是 Java 开发不可或缺的工具。
|
2月前
|
JSON Java Maven
实现Java Spring Boot FCM推送教程
本指南介绍了如何在Spring Boot项目中集成Firebase云消息服务(FCM),包括创建项目、添加依赖、配置服务账户密钥、编写推送服务类以及发送消息等步骤,帮助开发者快速实现推送通知功能。
109 2
|
1月前
|
Java 数据库连接 API
Spring 框架的介绍(Java EE 学习笔记02)
Spring是一个由Rod Johnson开发的轻量级Java SE/EE一站式开源框架,旨在解决Java EE应用中的多种问题。它采用非侵入式设计,通过IoC和AOP技术简化了Java应用的开发流程,降低了组件间的耦合度,支持事务管理和多种框架的无缝集成,极大提升了开发效率和代码质量。Spring 5引入了响应式编程等新特性,进一步增强了框架的功能性和灵活性。
44 0
|
2月前
|
存储 人工智能 Java
将 Spring AI 与 LLM 结合使用以生成 Java 测试
AIDocumentLibraryChat 项目通过 GitHub URL 为指定的 Java 类生成测试代码,支持 granite-code 和 deepseek-coder-v2 模型。项目包括控制器、服务和配置,能处理源代码解析、依赖加载及测试代码生成,旨在评估 LLM 对开发测试的支持能力。
50 1
|
2月前
|
Java BI 调度
Java Spring的定时任务的配置和使用
遵循上述步骤,你就可以在Spring应用中轻松地配置和使用定时任务,满足各种定时处理需求。
158 1

热门文章

最新文章