Spring之IoC(容器配置、Spring坐标导入、获取bean)

这里的话,因为博主学习时间有限,并没有实际去操作,只是学习和了解一个大概的流程。


目录

一、引言

1、管理什么?(对象:Service、Dao ...)

2、如何将被管理的对象告知 IoC 容器?(用配置文件)

3、被管理的对象交给 IoC 容器,如何获取到 IoC 容器?(接口)

4、IoC 容器得到后,如何从容器中获取 bean ? (用接口的方法拿出)

5、使用 Spring 要导入坐标?(在 pom.xml 中)

二、开始操作(博主只是学习了解大概流程...)

(1)写配置文件

1、在 resources 去写程序所需要的配置文件。

2、但是首先要到 pom.xml 文件去导 Spring 的包。

3、现在才正式可以开始写配置文件了。

(2)获取 IoC 容器。(用接口的实现类)

(3)分别获取 bean(接口实现类调用方法)

(4)第二个会输出两个结果,因为有依赖关系。


一、引言

我们要学习在 Spring 的环境下,学习如何运用 IoCDI

首先对应 IoC 的案例思路分析。

1、管理什么?(对象:ServiceDao ...)
2、如何将被管理的对象告知 IoC 容器?(用配置文件)
3、被管理的对象交给 IoC 容器,如何获取到 IoC 容器?(接口)
4、IoC 容器得到后,如何从容器中获取 bean ? (用接口的方法拿出)
5、使用 Spring 要导入坐标?(在 pom.xml 中)

二、开始操作(博主只是学习了解大概流程...)

(1)写配置文件
1、在 resources 去写程序所需要的配置文件。

2、但是首先要到 pom.xml 文件去导 Spring 的包。

去标签下 <dependencies><dependency> 下导入 Spring 的坐标。就是下面如图这样导入:

对于 Spring 的坐标:自己去 Maven 中央仓库查找吧

中央仓库icon-default.png?t=N7T8https://mvnrepository.com/它的 <artifcatId> 里应该是填写 spring-context。(最下面有例子)

然后 <version> 版本的选择就选稳定合适的就行。

<groupId> 就填下面图片所示的。

本人随便去中央仓库找了一个稳定的(例子)

上面写完记得在 IDEA中点右上角刷新按钮。

下面这个是博主的IDEA用来举例的哈。


3、现在才正式可以开始写配置文件了。

接下来去配置 bean。

格式:<bean id=" ... " (为了拿到对应的 bean ,写名字) ,class='' ... '' (这里面写实现类)>

举例:


(2)获取 IoC 容器。(用接口的实现类)

名称:ApplicationContext 变量名 =  new 实现类(参数:写刚刚的配置文件:某某.xml)

(它是一个接口,要 new 一个它的实现类)


(3)分别获取 bean(接口实现类调用方法)

bean定义时 id 属性在同一个上下文中不能重复

第一个

第二个


(4)第二个会输出两个结果,因为有依赖关系。

(看到以下的类、接口结构图可以清楚看到) 


从这上面发现充分解耦并没有完全做好,这篇博客的学习就到这。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/32378.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【ARM 安全系列介绍 3.7 -- SM4 对称加密算】

请阅读【嵌入式开发学习必备专栏 Cache | MMU | AMBA BUS | CoreSight | Trace32 | CoreLink | GCC | CSH | Armv8/v9 系统异常分析】 文章目录 SM4 加密算法简介SM4 工作模式算法步骤加密举例注意事项 Principle of SM4 encryption algorithm SM4 加密算法简介 SM4是一种分组…

如何基于Redis实现分布式锁?

分布式锁介绍 对于单机多线程来说&#xff0c;在 Java 中&#xff0c;我们通常使用 ReetrantLock 类、synchronized 关键字这类 JDK 自带的 本地锁 来控制一个 JVM 进程内的多个线程对本地共享资源的访问。 下面是我对本地锁画的一张示意图。 本地锁 从图中可以看出&#xf…

Unity 限时免费资源 - FANTASTIC万圣节资源包

Unity 资源 - FANTASTIC - Halloween Pack 万圣节包 前言资源包内容领取兑换码 前言 亲爱的 Unity 游戏开发者们&#xff0c;今天要给大家介绍一款限时免费的优质资源包 - FANTASTIC - Halloween Pack 万圣节资源包。 这个资源包为您的游戏创作带来了丰富的万圣节主题元素。其…

开关阀(3):Fisher DVC6200定位器原理及调试

Fisher DVC6200---Digital Valve Controllers&#xff08; 数字阀门控制器&#xff09;简写 DVC,而6200是Fisher DVC定位器发展的一个系列型号&#xff0c;是Fisher结合DVC2000、DVC6000系列&#xff0c;取其特点发展的有着高适用性和高可靠性的阀门定位器。 DVC6200 原理&…

Apriori 处理ALLElectronics事务数据

通过Apriori算法挖掘以下事务集合的频繁项集&#xff1a; 流程图 代码 # 导入必要的库 from itertools import combinations# 定义Apriori算法函数 def apriori(transactions, min_support, min_confidence):# 遍历数据&#xff0c;统计每个项的支持度 item_support {}for tr…

AI数据分析:根据时间序列数据生成动态条形图

动态条形竞赛图&#xff08;Bar Chart Race&#xff09;是一种通过动画展示分类数据随时间变化的可视化工具。它通过动态条形图的形式&#xff0c;展示不同类别在不同时间点的数据排名和变化情况。这种图表非常适合用来展示时间序列数据的变化&#xff0c;能够直观地显示数据随…

亚马逊卖家注册业务类型怎么选?VC账号能申请?

在亚马逊卖家注册时&#xff0c;业务类型的选择是非常重要的&#xff0c;因为它将直接影响您的销售策略、费用结构以及您在平台上的权限。目前&#xff0c;亚马逊主要的卖家业务类型包括专业卖家和个人卖家&#xff0c;而VC&#xff08;Vendor Central&#xff09;账号和VE&…

Camtasia2024中文版最新电脑录屏剪辑神器!

大家好&#xff0c;今天我要安利一个我最近超级喜欢的工具——Camtasia2024中文版&#xff01;这款软件真的太棒了&#xff0c;它让我的视频编辑工作变得更加轻松和高效。如果你也对视频制作感兴趣&#xff0c;那么一定要尝试一下这款神器哦&#xff01; Camtasia2024win-正式…

动态规划02(Leetcode62、63、343、96)

参考资料&#xff1a; https://programmercarl.com/0062.%E4%B8%8D%E5%90%8C%E8%B7%AF%E5%BE%84.html 62. 不同路径 题目描述&#xff1a; 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移…

VBA:demo大全

VBA常用小代码合集&#xff0c;总有一个是您用得上的~ (qq.com) 如何在各个分表创建返回总表的命令按钮&#xff1f; 今天再来给大家聊一下如何使用VBA代码&#xff0c;只需一键&#xff0c;即可在各个分表生成返回总表的按钮。 示例代码如下&#xff1a; Sub Mybutton()Dim …

NeRF从入门到放弃3: EmerNeRF

https://github.com/NVlabs/EmerNeRF 该方法是Nvidia提出的&#xff0c;其亮点是不需要额外的2D、3Dbox先验&#xff0c;可以自动解耦动静field。 核心思想&#xff1a; 1. 动、静filed都用hash grid编码&#xff0c;动态filed比静态多了时间t&#xff0c;静态的hash编码输入是…

数据虚拟化、Data Fabric(数据编织)的兴起,对数据管理有何帮助?

数字化时代&#xff0c;虚拟化&#xff08;Virtualization&#xff09;并不是一个很陌生的词汇&#xff0c;它是现代数据中心资源管理的核心技术之一&#xff0c;是对 IT 资源&#xff08;如服务器、存储设备、网络设备等&#xff09;的抽象&#xff0c;通过屏蔽 IT 资源的物理…

音乐管理系统

摘 要 现如今&#xff0c;在信息快速发展的时代&#xff0c;互联网已经成了人们在日常生活中进行信息交流的重要平台。看起来&#xff0c;听歌只是一种消遣和消遣&#xff0c;其实&#xff0c;只要你选对了曲子&#xff0c;就会产生许多不同的作用。音乐能舒缓身心&#xff0c…

你好,复变函数2.0

第一行&#xff1a;0 或 1 第二行&#xff1a;&#xff08;空格&#xff09;函数&#xff08;后缀&#xff09; #pragma warning(disable:4996) #include <easyx.h> #include <stdio.h> #include <math.h> #define PI 3.141592653589793 #define E 2.71828…

解决 执行 jar 命令 控制台乱码

Springboot项目&#xff0c;编码为utf8 打包后&#xff0c;为了在控制台运行时不乱码&#xff0c;需要在控制台中依次执行以下命令&#xff1a; 第一步&#xff1a; chcp 65001第二步&#xff1a; java -jar -Dfile.encodingutf-8 你的.jar

数字营销新玩法:拓新与裂变的完美结合

在当今这个飞速发展的数字化时代&#xff0c;数字营销已经成为了企业发展中至关重要的一环。拓新&#xff0c;简单来说就是不断去开拓新的客户群体&#xff0c;让更多的人了解并接触到我们的产品或服务。要做到这一点&#xff0c;那可得充分利用各种线上渠道。像热闹非凡的社交…

免费开源的地图解析工具【快速上手】

视频学习地址 这篇文章和【Nominatim】是相呼应的&#xff0c;在尝试了OSM数据一直有问题之后&#xff0c;通过别人的指点是不是可以换个思路&#xff0c;我的数据只需要精确到市级别&#xff0c;也可以不用OSM这样全的数据&#xff08;主要原因还是OSM太过庞大了&#xff09; …

软银CEO孙正义:10年内将出现比人类聪明1万倍的人工智能|TodayAI

2024年6月20日&#xff0c;软银集团公司&#xff08;SoftBank&#xff09;董事长兼首席执行官孙正义在日本东京举行的公司年度股东大会上发表讲话&#xff0c;表示比人类聪明1万倍的人工智能将在10年内出现。这是他近年来一次罕见的公开露面&#xff0c;在会上他质疑了自己的人…

连接和断开信号演示之二

代码; #include <gtk-2.0/gtk/gtk.h> #include <gtk-2.0/gdk/gdkkeysyms.h> #include <glib-2.0/glib.h> #include <stdio.h>void button_press(GtkEventBox *ebox,GdkEventButton *event,GtkLabel *label) {const char *citem;switch(event->type…

银河麒麟V10 SP1.1操作系统 离线安装 nginx1.21.5、redis 服务

银河麒麟官网地址&#xff1a;国产操作系统、麒麟操作系统——麒麟软件官方网站 一、查看系统版本 命令&#xff1a;nkvers 我的是 release V10 (SP1)&#xff0c;根据这个版本去官网找对应的rpm包 银河麒麟操作系统的rpm包必须从官方找&#xff0c; 要是随便找个Centos的rp…