• Java学习笔记(十八)


    Spring Boot

    什么是 Spring Boot?

    Spring Boot 已经建立在现有 spring 框架之上。使用 spring 启动,避免了之前我们必须做的所有样板代码和配置。因此,SpringBoot 可以帮助我们以最少的工作量,更加健壮地使用现有的 Spring 功能。

    Spring Boot 有哪些优点?

    减少开发成本,提高效率。

    使用 JavaConfig 有助于避免使用 XML。

    避免大量的 Maven 导入和各种版本冲突。

    提供意见发展方法。 通过提供默认值快速开始开发。 没有单独的 Web 服务器需要。这意味着你不再需要启动 Tomca。

    减少配置,因为没有 web.xml 文件。

    Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?

    启动类上面的注解是@SpringBootApplication,它也是 Spring Boot 的核心注解,主要组合包含了以下 3 个注解:

    @SpringBootConfiguration:组合了 @Configuration 注解,实现配置文件的功能。
    @EnableAutoConfiguration:打开自动配置的功能
    @ComponentScan:Spring组件扫描。

    Spring Boot 自动配置原理是什么?

    SpringBoot的自动配置注解是@EnableAutoConfiguration,点进去发现 @Import的类 中有执行自动加载配置的代码,其中 loadFactoryNames 方法会加载类路径及所有jar包下META-INF/spring.factories配置中映射的自动配置的类。

     public static final String FACTORIES_RESOURCE_LOCATION = "META-INF/spring.factories"; 
    
    • 如何重新加载 Spring Boot 上的更改,而无需重新启动服务器?
    1. 使用springloaded配置pom.xml文件 (生产环境推荐)
    2. 使用devtool工具包 (开发环境推荐)
    1. org.springframework.boot
    2. spring-boot-devtools
    3. true

    Spring Boot 如何定义多套不同环境配置?

    假如有开发、测试、生产三个不同的环境,需要定义三个不同环境下的配置。

    applcation.properties

    application-dev.properties

    application-test.properties

    application-prod.properties

    需要指定环境时,在applcation.properties文件中指定当前的环境spring.profiles.active=dev,用dev环境

    1. spring:
    2. profiles:
    3. active: dev

    springboot实现热部署的原理
    ​ 深层原理是使用了两个ClassLoader,一个ClassLoader加载那些不会改变的类(第三方jar包),另一个ClassLoader加载会更改的类,称为restartClassLoader ,这样在有代码更改的时候,原来的restartClassLoader被丢弃,重新建一个restartClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间

    如何在自定义端口上运行 Spring Boot 应用程序?
     

    为了在自定义端口上运行 Spring Boot 应用程序,您可以在 application.properties 中指定端 口。

    server.port = 8090
    

    如何实现 Spring Boot 应用程序的安全性?

    使用 spring-boot-starter-security 依赖项,并且必须添加安全配置。它只需要很少的代码。配置类将必须扩展 WebSecurityConfigurerAdapter 并覆 盖其方法。

    什么是 Swagger?你用 Spring Boot 实现了它吗?

    Swagger 广泛用于可视化 API。Swagger 是 用于生成 RESTful Web 服务的可视化表示的工具,规范和完整框架实现。它使文档能够以 与服务器相同的速度更新。

    如何使用 Spring Boot 实现异常处理

    Spring 提供了一种使用 ControllerAdvice 处理异常的非常有用的方法。 我们通过实现一个 ControlerAdvice 类,来处理控制器类抛出的所有异常。
     

  • 相关阅读:
    GO语言之Goroutine和channel
    DataX二次开发——(9)新增s3reader和s3writer模块
    Linux:redis的基础操作
    从裸机开始安装操作系统
    多线程学习笔记-2.final关键字和不变性
    Hive的基本知识与操作
    Vue3文件拖拽上传
    dos batch动态设置数组
    防火墙Ipsec vpn的配置
    微信小程序 — WeUI slideview 左滑删除(二)
  • 原文地址:https://blog.csdn.net/Rick_rui/article/details/126146388