学习进度条3.31
所花时间:4小时
代码量:60
搏客量:1
了解到的知识点:
- 核心特性
自动配置(Auto-Configuration)
基于类路径和依赖自动配置 Bean,无需手动编写 XML。
起步依赖(Starter Dependencies)
简化 Maven/Gradle 依赖管理(如 spring-boot-starter-web 包含 Web 开发所需依赖)。
内嵌服务器(Embedded Server)
默认集成 Tomcat、Jetty 或 Undertow,无需部署 WAR 文件。
Actuator
提供生产级监控端点(如 /health, /metrics)。
2. 核心注解
@SpringBootApplication
组合注解,包含 @Configuration、@EnableAutoConfiguration、@ComponentScan。
@RestController
组合 @Controller + @ResponseBody,直接返回 JSON/XML 数据。
@Autowired
自动注入依赖(推荐结合构造函数注入)。
@Value
读取配置文件中的值(如 @Value("${app.name}"))。
@ConfigurationProperties
批量绑定配置到 Java 对象(类型安全的配置)。
3. 配置管理
配置文件
application.properties 或 application.yml,支持多环境配置(如 application-dev.yml)。
多环境配置
使用 spring.profiles.active=dev 激活指定环境。
自定义配置
通过 @PropertySource 加载外部配置。
命令行参数
启动时指定参数:java -jar app.jar --server.port=8081。
4. 数据访问
Spring Data JPA
注解:@Entity, @Repository, @Query。
简化 CRUD:继承 JpaRepository<Entity, ID>。
MyBatis 集成
使用 @Mapper 或 @MapperScan 扫描接口。
事务管理
@Transactional 注解声明事务。
数据源配置
配置 spring.datasource.url, username, password,支持 HikariCP 连接池。
5. Web 开发
RESTful API
注解:@GetMapping, @PostMapping, @PathVariable, @RequestBody。
统一响应格式:使用 ResponseEntity 或自定义响应体。
静态资源处理
默认路径:/static, /public, /resources。
模板引擎
支持 Thymeleaf、FreeMarker(配置 spring.thymeleaf.enabled=true)。
文件上传
使用 MultipartFile 处理上传。
6. 中间件集成
Redis
配置 spring.data.redis.host, port。
使用 RedisTemplate 或 @Cacheable 缓存数据。
RabbitMQ
通过 spring-boot-starter-amqp 集成。
使用 @RabbitListener 监听消息。
Elasticsearch
通过 Spring Data Elasticsearch 集成。
7. 安全
Spring Security
基础认证:配置 SecurityFilterChain。
注解:@PreAuthorize, @Secured。
OAuth2.0
快速集成第三方登录(如 GitHub、Google)。
8. 测试
单元测试
使用 @SpringBootTest 加载完整上下文。
Mock 依赖:@MockBean, @SpyBean。
API 测试
使用 MockMvc 模拟 HTTP 请求。
mockMvc.perform(get("/api/data"))
.andExpect(status().isOk());
9. 部署与监控
打包与运行
打包为 JAR:mvn package。
运行:java -jar app.jar。
Docker 化
编写 Dockerfile 并构建镜像。
Spring Boot Admin
可视化监控多个 Spring Boot 应用。
10. 常见问题排查
启动失败
检查端口冲突、依赖冲突或配置错误。
Bean 注入失败
确认 @Component 注解和包扫描路径。
配置不生效
检查配置文件名、路径及 spring.profiles.active。

浙公网安备 33010602011771号