Springboot

Spring Boot 是基于 Spring 框架的快速开发工具集,旨在简化 Spring 应用的配置和开发。以下是一些关键的 Spring Boot 知识点:

1. Spring Boot 简介

  • 自动配置

    • Spring Boot 自动配置(Auto-Configuration)机制可以根据类路径中的依赖、Bean 定义等,自动配置应用所需的 Spring 组件,极大地减少了手动配置的工作量。
  • 嵌入式服务器

    • Spring Boot 提供了嵌入式的 Web 服务器(如 Tomcat、Jetty、Undertow),无需部署 WAR 文件,直接运行 JAR 文件即可启动应用。
  • 独立运行

    • 使用 SpringApplication.run() 方法启动应用,无需依赖外部容器。

2. 核心注解

  • @SpringBootApplication

    • 是一个复合注解,组合了 @Configuration@EnableAutoConfiguration@ComponentScan
    • 这个注解通常放在主应用类上,用于标识 Spring Boot 应用的入口。
  • @EnableAutoConfiguration

    • 告诉 Spring Boot 自动配置你的应用程序,基于类路径中的依赖来决定配置内容。
  • @ComponentScan

    • 自动扫描指定包及其子包中的所有 @Component@Service@Repository@Controller 等注解的类,并将其注册为 Spring Bean。

3. Spring Boot 配置

  • application.propertiesapplication.yml

    • 这些文件用于配置 Spring Boot 应用的各种属性,如端口、数据库连接、日志级别等。
    • 支持多环境配置(如 application-dev.ymlapplication-prod.yml),可以根据运行环境加载不同的配置文件。
  • 外部化配置

    • Spring Boot 支持通过环境变量、命令行参数、系统属性等多种方式外部化配置,使得应用的配置更加灵活。

4. Spring Boot Starter

  • Starter 是 Spring Boot 提供的一种依赖管理机制,预配置了一组常用依赖。
    • spring-boot-starter-web:包含构建 Web 应用所需的常用依赖,如 Spring MVC、Tomcat 等。
    • spring-boot-starter-data-jpa:包含使用 JPA 进行数据访问所需的依赖,如 Hibernate、Spring Data JPA 等。
    • spring-boot-starter-test:包含常用的测试库,如 JUnit、Mockito 等。

5. Spring Boot 与数据库

  • 数据源配置

    • 通过 application.propertiesapplication.yml 配置数据源连接信息,如 spring.datasource.urlspring.datasource.usernamespring.datasource.password
  • Spring Data JPA

    • 与 Spring Data JPA 集成,简化了数据库访问层的开发。你可以使用 JpaRepositoryCrudRepository 接口来执行常见的数据库操作。
  • Flyway 和 Liquibase

    • Spring Boot 支持 Flyway 和 Liquibase 数据库迁移工具,帮助管理数据库版本和自动执行数据库脚本。

6. Spring Boot Web 开发

  • 内嵌 Web 服务器

    • Spring Boot 默认集成了 Tomcat 作为内嵌 Web 服务器,你也可以通过配置使用 Jetty 或 Undertow。
  • Spring MVC

    • 使用 @RestController@RequestMapping 注解处理 Web 请求。
    • 提供 JSON 和 XML 格式的响应,支持 @ResponseBody 注解直接将对象序列化为 JSON。
  • 模板引擎

    • Spring Boot 支持多种模板引擎,如 Thymeleaf、Freemarker、Groovy 等,方便生成动态网页。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值