SpringBoot全注解开发指南

一、Spring 纯注解配置(全注解开发)

告别 XML 文件,使用注解完成 Spring 容器配置,是 SpringBoot 的基础!

1. 核心注解详解

表格

注解 作用 等价 XML 配置
@Bean 将方法返回的对象注入 Spring IOC 容器 <bean id="" class=""/>
@PropertySource 加载外部 properties 配置文件 <context:property-placeholder>
@ComponentScan 开启 Spring 组件扫描,注册 Bean <context:component-scan>
@Import 导入其他配置类,实现配置拆分 <import resource=""/>
@Configuration 标记当前类为 Spring 配置类,替代 xml applicationContext.xml

2. 注解补充说明

  • @Beanvalue 属性用于指定 Bean 的名称(IOC 容器的 key)
  • @PropertySourcevalue 指定配置文件路径,支持classpath:前缀
  • @ComponentScan :自动扫描@Controller/@Service/@Component等注解
  • @Configuration:标注的类会被 Spring 识别为配置入口

二、Spring Boot 入门核心知识【重点】

1. Spring Boot 介绍

SpringBoot = Spring + SpringMVC它不是新框架,不增强 Spring 功能,只是快速开发 Spring 应用的工具!

核心特点

✅ 完全摒弃 XML 配置文件

✅ 自动封装 Maven 依赖,简化配置

✅ 内置 Tomcat/Jetty 服务器,直接运行

✅ 自动配置,开箱即用


2. Spring Boot 入门案例(手把手)

① 父工程依赖(pom.xml)

所有 SpringBoot 项目必须继承父工程,统一管理版本

xml

复制代码
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.3.2.RELEASE</version>
    <relativePath/>
</parent>
② Web 启动器依赖

xml

复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
③ 启动类(核心!)

包路径要求 :必须是 Controller/Service/Mapper 的上级包

java

运行

复制代码
package com.hg;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * SpringBoot启动类
 */
@SpringBootApplication
public class SpringbootHelloworldApp {
    public static void main(String[] args) {
        // 启动SpringBoot应用
        SpringApplication.run(SpringbootHelloworldApp.class);
    }
}
④ 编写 Controller

java

运行

复制代码
package com.hg.controller;

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

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String hello(){
        return "Hello SpringBoot!";
    }
}

3. SpringBoot 启动器 Starter

① 什么是 Starter?

启动器 = 依赖集合 + 自动配置类SpringBoot 封装好的 "一站式依赖包",引入后自动配置环境。

② Starter 命名规范
  • 官方启动器spring-boot-starter-模块名称示例:spring-boot-starter-webspring-boot-starter-test
  • 第三方启动器模块名称-spring-boot-starter示例:mybatis-spring-boot-starterdruid-spring-boot-starter

启动类

java

运行

复制代码
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication// SpringBoot的主类
public class SpringHalleWorldApp {
    public static void main(String[] args) {
        SpringApplication.run(SpringHalleWorldApp.class, args);
    }
}

访问方式

启动项目后,浏览器访问:

plaintext

复制代码
http://localhost:8080/text

返回结果

json

复制代码
{"name":"yunkukukuku","age":18}

3. SpringBoot 启动器 Starter【重点】

① 什么是 Starter?

启动器 = 依赖集合 + 自动配置类SpringBoot 封装好的 "一站式依赖包",引入后自动配置环境。

② Starter 命名规范
  • 官方启动器spring-boot-starter-模块名称示例:spring-boot-starter-webspring-boot-starter-test
  • 第三方启动器模块名称-spring-boot-starter示例:mybatis-spring-boot-starterdruid-spring-boot-starter

三、总结

  1. Spring 纯注解开发靠@Configuration+@Bean等注解替代 XML
  2. SpringBoot 简化开发,核心是自动配置 + 内置容器 + 启动器
  3. 启动类@SpringBootApplication是入口,包路径必须规范
  4. Starter 是 SpringBoot 的灵魂,大大简化 Maven 依赖管理
  5. @Controller + @ResponseBody可以直接返回 JSON 数据
相关推荐
伏加特遇上西柚30 分钟前
Loki+Alloy+Grafana日志采集部署
java·linux·服务器·spring boot·grafana·prometheus
阿丘Akiu1 小时前
Linux部署我的世界服务器
java
折哥的程序人生 · 物流技术专研1 小时前
《Java面试85题图解版(二)》进阶深化中篇:Spring核心 + 数据库进阶
java·后端·spring·面试
SamDeepThinking1 小时前
写代码不考虑前后兼容,迟早要还的
java·后端·程序员
亿牛云爬虫专家1 小时前
深度解析:数据采集场景下的 Java 代理技术实战
java·开发语言·数据采集·动态ip·动态代理·代理配置·连接池复用
小小仙。1 小时前
IT自学第四十二天
java·开发语言
java1234_小锋2 小时前
说一下Spring的事务传播行为?
java·数据库·spring
庞轩px2 小时前
第四篇:SpringBoot自动配置——约定大于配置的底层原理
java·spring boot·后端·spring·自动配置·注解开发
不知名的忻2 小时前
Dijkstra算法(朴素版&堆优化版)
java·数据结构·算法··dijkstra算法
苏三说技术2 小时前
美团二面:高并发下如何保证接口幂等性?
java·数据库