首页 > 其他分享 >SpringBoot原理篇

SpringBoot原理篇

时间:2024-10-13 10:17:47浏览次数:7  
标签:applicationContext SpringBoot 配置 DeptController 获取 bean 原理篇

目录

配置优先级

bean的管理

获取bean

bean作用域

第三方bean

法一

法二

SpringBoot原理

起步依赖

自动配置

概述

方案

@ComponentScan 组件扫描

@lmport 导入

原理分析

源码跟踪

@Conditional

案例


配置优先级

虽然springboot支持多种格式配置文件,但是在项目开发时,推荐统一使用一种格式的配置
(yml是主流)

SpringBoot 除了支持配置文件属性配置,还支持Java系统属性和命令行参数的方式进行属性配置。

优先级(低→高)

打包

执行指令

bean的管理

获取bean

    @Autowired
    private ApplicationContext applicationContext; //IOC容器对象

    //获取bean对象
    @Test
    public void testGetBean(){
        //根据bean的名称获取
        DeptController bean1 = (DeptController) applicationContext.getBean("deptController");
        System.out.println(bean1);

        //根据bean的类型获取
        DeptController bean2 = applicationContext.getBean(DeptController.class);
        System.out.println(bean2);

        //根据bean的名称 及 类型获取
        DeptController bean3 = applicationContext.getBean("deptController", DeptController.class);
        System.out.println(bean3);
    }

bean作用域

第三方bean

法一

法二

SpringBoot原理

起步依赖

自动配置

概述

SpringBoot的自动配置就是当spring容器启动后,一些配置类、bean对象就自动存入到了IOC容器中,不需要我
们手动去声明,从而简化了开发,省去了繁琐的配置操作。

方案

都需要先去引入目标工程的依赖

@ComponentScan 组件扫描

@lmport 导入

原理分析

源码跟踪

@Conditional

案例

在实际开发中,经常会定义一些公共组件,提供给各个项目团队使用。而在SpringBoot的项目中,一般会将这些公共组件封装为SpringBoot 的 starter。

版本任然先选择2.7.几,随后在pom中改为2.7.5

创建autoconfigure模块操作一样,多留一个src

将aliyun-oss依赖粘贴到autoconfigure的pom下

标签:applicationContext,SpringBoot,配置,DeptController,获取,bean,原理篇
From: https://blog.csdn.net/2403_85375987/article/details/142894015

相关文章

  • 基于nodejs+vue基于SpringBoot的毕业生就业系统[开题+源码+程序+论文]计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景在当今社会,随着高等教育的普及和就业市场的日益竞争激烈,毕业生的就业问题已成为社会关注的焦点。传统的就业服务模式往往存在信息不对称、效率低下等问题,难......
  • 基于nodejs+vue基于springboot的残障人士社交平台[开题+源码+程序+论文]计算机毕业设
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景在当今社会,信息技术的飞速发展极大地改变了人们的生活方式,也为残障人士提供了更多的可能性。然而,由于身体条件的限制,许多残障人士在社交互动和信息获取上仍......
  • 基于nodejs+vue基于Springboot的测试项目管理平台[开题+源码+程序+论文]计算机毕业设
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着信息技术的迅猛发展,软件开发已成为现代社会不可或缺的一部分。在软件开发过程中,测试环节扮演着至关重要的角色,它直接关系到软件的质量和用户体验。然而,......
  • 基于nodejs+vue基于springboot的产后护理系统[开题+源码+程序+论文]计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着现代社会的发展和生活水平的提高,人们对产后护理的重视程度日益增加。传统的产后护理方式大多依赖于家庭成员或个别专业机构,但这些方式往往缺乏系统性和......
  • Java项目:高校心理辅导系统(java+SpringBoot+Vue+elementui+mysql)
    源码获取:俺的博客首页"资源"里下载! 项目介绍基于Springboot+vue高校心理教育辅导设计与实现本系统分为前后台,包含管理员、学生、教师三种角色,前台为学生、教师登录,后台为管理员、学生、教师分别登录。前台主要功能:首页、心理健康学习、试卷列表、公告通知、留言反馈、......
  • Java项目:母婴商城系统(java+SpringBoot+Mybaits+Vue+elementui+mysql)
    源码获取:俺的博客首页"资源"里下载! 项目介绍基于Springboot+vue的母婴商城系统本系统分为前后台,包含管理员、用户两种角色,前台为普通用户登录,后台为管理员、用户分别登录。前台主要功能:首页、商品信息、商品资讯、用户登录、用户注册、用户个人中心、我的订单、我的地......
  • Java项目:房产销售系统(java+SpringBoot+Mybaits+Vue+elementui+mysql)
    源码获取:俺的博客首页"资源"里下载! 项目介绍基于Springboot+vue的房产销售系统本系统分为前后台,包含管理员、用户、销售经理三种角色,前台为普通用户登录,后台为管理员、用户、销售经理分别登录。前台主要功能:首页、房源信息、用户登录、用户注册、用户个人中心、我的收......
  • Springboot在线学习辅导管理系统--49101(免费领源码)可做计算机毕业设计JAVA、PHP、爬虫
    摘 要信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对在线学习辅导管理系统等问题,对在线学习辅导管理系统进行研究分析,然后开发设计出在线学习辅......
  • Springboot一个小说阅读APP的设计与实现--48151(免费领源码)可做计算机毕业设计JAVA、PH
    摘 要大数据时代下,数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势。在小说在线阅读的需求下,开发一款小说阅读APP,将复杂的系统进行拆分,能够实现对需求的变化快速响应、系统稳定性的保障,能保......
  • Solon-Boot 与 SpringBoot 的概念不同
    平常我们是拿Solon生态与SpringBoot生态作比较。而非Solon-Boot(仅是功能模块)与SpringBoot生态,但这两名字太容易让人误解了。Solon-BootSolon-Boot仅表示Solon的“服务端“启动模块组(相当于Solonserverbootstrap)。它是个“功能性”模块划分概念,跟Solon-Data,So......