spring boot启动原理
本文内容纲要:spring boot启动原理我们开发任何一个Spring Boot项目,都会用到如下的启动类1 @SpringBootApplication2 public class Application {3 public static void main(String[] args) {4 SpringApplication.run(Application.class, args);5 }6 }从上面代码可以看出,Annotation定义(@SpringBootApp...
2024-01-10SpringBoot自动配置原理详解
目录阅读收获一、SpringBoot是什么二、SpringBoot的特点三、启动类3.1 @SpringBootApplication四、@EnableAutoConfiguration4.1 @AutoConfigurationPackage4.2 @Import({AutoConfigurationImportSelector.class})五、流程总结图六、常用的Conditional注解七、@Import支持导入的三种方式阅读收获理解SpringBoot自动配置原理一、SpringBoot是什么S...
2024-01-10SpringBoot自动配置原理、实战
org.springframework.core.io.support.SpringFactoriesLoader.loadFactoryNames(Class<?>, ClassLoader) public static List<String> loadFactoryNames(Class<?> factoryClass, ClassLoader classLoader) { String factoryClassName = factoryClass.getName(); tr...
2024-01-10springboot mvc自动配置问题?
其中的自动配置类WebMvcAutoConfiguration里面的两个内部配置类:1:WebMvcAutoConfigurationAdapter;2:EnableWebMvcConfiguration。然后WebMvcAutoConfigurationAdapter上有个注解:@Import(EnableWebMvcConfiguration.class),有两个疑问:1:为啥EnableWebMvcConfiguration已经是个配置类了会随着WebMvcAutoConfiguration加载而一起...
2024-01-10浅析SpringBoot自动化配置原理实现
绪论什么是SpringBoot?Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(...
2024-01-10spring boot(二):启动原理解析
本文内容纲要:spring boot(二):启动原理解析我们开发任何一个Spring Boot项目,都会用到如下的启动类1 @SpringBootApplication2 public class Application {3 public static void main(String[] args) {4 SpringApplication.run(Application.class, args);5 }6 }从上面代码可以看出,Annotation定义(@SpringB...
2024-01-10SpringBoot 自动配置失效的解决方法
目录问题描述@EnableConfigurationProperties 注解行为配置有效,AutoTestConfiguration 未刷新prefix-type@ConditionalOnProperty@ConditionalOnProperty match 逻辑@ConditionalOnProperty skip 逻辑总结本文源自近期项目中遇到的问题, bug 总是出现在你自以为是的地方...问题描述下面是一个简单复现的代码片段,在你没有阅读完本文时...
2024-01-10SpringBoot启动及自动装配原理过程详解
一、servlet2(老spring-mvc)配置文件:web.xml:主要配置项目启动项application-context.xml:主要配置项目包扫描、各种bean、事务管理springMVC.xml:主要配置controller包扫描、视图解析器、参数解析器启动过程:每一个spring项目启动时都需要初始化spring-context,对于非web项目可以在程序main方法中触发这个...
2024-01-10springboot的java配置方式(实例讲解)
1.创建User实体类。@Datapublic class User { private String username; private String password; private Integer age;}2.创建UserDao用于模拟数据库交互。public class UserDao{ public List<User> queryUserList() { List<User> result = new ArrayList<User>(); //模拟数据库查询 for(int i = 1...
2024-01-10springboot集成druid连接池配置的方法
在开发项目中如果数据库选型为mysql,很大概率下连接池会使用druid这里介绍springboot集成duridspringboot : 2.1.9druid : 1.1.10案例地址github地址springboot集成druid配置需要引入的pom <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</...
2024-01-10spring boot 中设置默认网页的方法
废话不多说,直接上代码,相信都能看的懂 一共两布,第一步,创建Interceptor拦截package com.cy.example.config;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.slf4j.Logger;import org.slf4j.LoggerFactor...
2024-01-10springboot 启动时初始化数据库的步骤
问题描述在spring-boot启动时,希望能执行相应的sql文件来初始化数据库。使用配置文件初始化数据库可以在spring-boot的配置文件application.yml中设置要初始化的sql文件。这是最简单的方法,只需要添加属性就可以实现。首先设置spring.datasource.initialization-mode=always表示任何类型数据库都进行数据库初始化...
2024-01-10基于spring boot 命令行启动的一些坑
目录spring boot 命令行启动的一些坑1.spring boot项目启动时可以指定启动的参数2.使用–spring.profiles.active=test,无论如何都没办法修改环境spring-boot命令行启动(指定端口启动)springboot指定端口的三种方式方法一方法二spring boot 命令行启动的一些坑1.spring boot项目启动时可以指定启动的参数例如:java -jar Proje...
2024-01-10详解spring Boot Cli的配置和使用
SpringBootCLI是一个命令行工具,可用于快速搭建基于spring的原型。它支持运行Groovy脚本,这也就意味着你可以使用类似Java的语法,但不用写很多的模板代码。Spring Boot不一定非要配合CLI使用,但它绝对是Spring应用取得进展的最快方式( 你咋不飞上天呢?) 。 首先要下载分发包,下载地址如下 https://doc...
2024-01-10springboot 多数据源配置不生效遇到的坑及解决
目录多数据源配置不生效遇到的坑解决方案踩坑SpringBoot配置多数据源,循环引用问题解决办法多数据源配置不生效遇到的坑**同步数据时遇到多个数据源切换的问题,配置了yml文件时候发现启动的时候不加载数据源的配置。**spring:datasource:db1:driver-class-name:xxxxxxxurl:jdbc:xxxxxxxusername:rootpassword:111111...
2024-01-10SpringBoot server.port配置原理详解
目录SpringBoot server.port配置原理1. autoConfigure2. embed tomcat如何使用小结一下server.port不起作用SpringBoot server.port配置原理我们经常配置server.port=xxx,但其实这是一个比较复杂的过程才生效的,这次讲讲生效的过程。1. autoConfigure本质来源于自动配置org.springframework.boot.autoconfigure.web.servlet.ServletWebServerFacto...
2024-01-10SpringBoot异步使用@Async的原理以及线程池配置详解
目录前言使用步骤配置线程池类参数配置自定义线程任务总结原理刨析文章参考前言在实际项目开发中很多业务场景需要使用异步去完成,比如消息通知,日志记录,等非常常用的都可以通过异步去执行,提高效率,那么在Spring框架中应该如何去使用异步呢使用步骤完成异步操作一般有两种,消息...
2024-01-10springboot启动后卡住无日志的几种情况小结
目录1.场景复现1.1 说一下比较通用常见的场景1.2 不太常见的场景2.解决思路总结一下,出现的问题场景今天分享一下springboot启动后无日志的问题。1.场景复现springboot项目启动后卡住无日志,肯定是报错了或者其他原因,并且日志没有打印出来。1.1 说一下比较通用常见的场景检查一下 是否 exclude了spr...
2024-01-10springboot 基于Tomcat容器的自启动流程分析
Springboot 内置了Tomcat的容器,我们今天来说一下Springboot的自启动流程。一、Spring通过注解导入Bean大体可分为四种方式,我们主要来说以下Import的两种实现方法:1、通过实现ImportSerlector接口,实现Bean加载:public class TestServiceImpl { public void testImpl() { System.out.println("我是通过importSelector导入进来的servi...
2024-01-10springboot配置多数据源的实例(MongoDB主从)
相信看过上一篇文章的小伙伴已经知道了, 这章要讲的就是MongoDB主从配置。在这边文章中,你将要学到的是在项目中配置主从数据库,并且兼容其他数据库哟。。这些都是博主项目中需要并且比较重要的知识哦~好了,废话不多说,直接进主题。1.pom依赖<span style="white-space:pre"> </span><dependency> <group...
2024-01-10通过spring-rabbitmq自动重试与代理的连接
我已阅读此文档片段:RabbitMQ自动连接/拓扑恢复从SpringAMQP的第一个版本开始,该框架在代理发生故障的情况下提供了自己的连接和通道恢复。另外,如第3.1.10节“配置代理”中所述,当重新建立连接时,RabbitAdmin将重新声明任何基础结构Bean(队列等)。因此,它不依赖于amqp-client库现在提供的自动...
2024-01-10nginx中proxy_pass的斜杠配置
nginx中proxy_pass的斜杠配置 Nginx的官网将proxy_pass分为两种类型:不带URI方式:只包含IP和端口号的,不带uri(单个/也算uri),比如proxy_pass http://localhost:8080;带URI方式:在端口号之后有其他路径的,包含了只有单个/的如proxy_pass http://localhost:8080/,以及其他路径,比如proxy_pass http://localhost:8080/...
2024-01-10springboot后端返回的下载路径如何设置成相对路径?
问题:在前端下载文件时,由于后端返回的是绝对路径,浏览器会报错Not allowed to load local resource无法直接下载,必须点击这个log链接才能进行下载。后端返回的这个下载路径是在idea项目目录下动态生成的,有没有办法将这个路径转换为相对路径呢?回答:你的地址路径应该自己管理,你可以自行拼...
2024-01-10spring第一课,beans配置(中)——自动装配
本文内容纲要:spring第一课,beans配置(中)——自动装配•Spring IOC 容器可以自动装配 Bean. 需要做的仅仅是在 的 autowire 属性里指定自动装配的模式•byType(根据类型自动装配): 若 IOC 容器中有多个与目标 Bean 类型一致的 Bean. 在这种情况下, Spring 将无法判定哪个 Bean 最合适该属性, 所以不能执行自动...
2024-01-10无法在Spring Boot中自动装配@Repository带注释的界面
我正在开发一个Spring Boot应用程序,并且在这里遇到了一个问题。我试图注入一个@Repository注释的接口,它似乎根本不起作用。我收到这个错误org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springBootRunner': Injection of autowired dependencies failed; nested exception is org.spri...
2024-01-10