java spring IOC外部Bean注入
创始人
2024-05-15 08:04:30
0

外部Bean注入也是一种Bean操作的属性注入 但这次我们要注入的是一个类对象

我们先创建spring项目 引入基本依赖

然后在src下创建两个包 gettingStarted 和 generate 这个名字可以随便取 但和我同名 可以让你们不会出现 名称不一样导致资源找不到的问题

然后在
gettingStarted包下创建一个 类 一个 接口
InterfaceUser 接口 参考代码如下

package gettingStarted;public interface InterfaceUser {public void setName(String name);public String getName();public void setAge(int age);public int getAge();
}

这就是一个很普通的接口 里面定义了四个抽象方法

分别是两个属性 (name age) 的get和set方法

user类 参考代码如下

package gettingStarted;public class user implements InterfaceUser {public String name = "小裴";public int age = 13;public void setName(String name){this.name = name;}public String getName(){return name;}public void setAge(int age){this.age = age;}public int getAge(){return age;}
}

user类实现了InterfaceUser接口 重写了 这几个抽象的方法 并定义了两个值 name 和 age

然后在generate包下创建 organization类 参考代码如下

package generate;import gettingStarted.InterfaceUser;public class organization {public InterfaceUser User;public void setUser(InterfaceUser User){this.User = User;}public InterfaceUser getUser() { return this.User; }public void verifyOutput() {System.out.println(User.getName());System.out.println(User.getAge());}
}

这里 我们定义了一个InterfaceUser对象类型的变量(User) InterfaceUser 就是之前我们定义的 InterfaceUser 接口 我们需要一个这样的对象

然后声明了这个 InterfaceUser 对象的set方法
然后 verifyOutput方法 就调用了InterfaceUser中的两个get方法 获取值

然后 我们在src下创建 bean.xml
参考代码如下




这里 我们定义了organization类的对象时 直接 通过property给他的set复制 name User 代表指向类中的 User变量的set方法 然后 这个ref指向了user 就是我们第一个定义的bean创建了gettingStarted.user的对象 然后将这个对象 给了ref

简单说 就是 organization 接受一个InterfaceUser对象 xml 创建了gettingStarted.user的对象 然后将这个对象给到organization 中User的set方法 这时 organization 的 User就接到了一个 InterfaceUser实现为user类的对象

然后我们在src下创建 text
代码如下

import generate.organization;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class text {public static void main(String args[]) {//获取配置文件ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");organization organization = context.getBean("organization", organization.class);organization.verifyOutput();}
}

我们读取了 bean.xml的配置 然后通过反射创建对象 然后通过organization对象调用里面的verifyOutput方法
运行结果如下
在这里插入图片描述
这就是外部Bean注入 简单说就是注入一个类对象

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...