浅谈springioc实例化bean的三个方法
作者:Niel 时间:2022-05-18 08:37:56
1.构造器
也就是在上一篇讲的那个例子,调用默认的无参构造函数
2.静态工厂方法
1)创建需要执行的方法的类
public class HelloWorld {
public HelloWorld(){
System.out.println("aaaa");
}
public void hello(){
System.out.println("hello world");
}
}
2)创建静态工厂
public class HelloWorldFactory {
public static HelloWorld getInstance(){
return new HelloWorld();
}
}
3)编写applicationContext.xml配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<!--
在这个配置中,spring容器要用默认的构造函数为HelloWorld创建对象
-->
<bean id="helloWorld" class="HelloWorld"></bean>
<!--
采用静态工厂方法创建对象
factory-method为工厂方法
-->
<bean id="helloWorld2" class="HelloWorldFactory" factory-method="getInstance"></bean>
</beans>
4)启动容器,创建对象,调用方法
@Test
public void test(){
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
HelloWorld world = (HelloWorld)context.getBean("helloWorld2");
world.hello();
}
3.实例工厂方法(略)
来源:http://www.cnblogs.com/Niel-3/archive/2017/09/09/7498745.html
标签:spring,ioc,实例化,bean
0
投稿
猜你喜欢
Java类和成员上的一些方法实例代码
2022-03-15 10:47:31
基于C#的音乐播放器主Form实现代码
2022-07-13 01:21:36
基于Java回顾之JDBC的使用详解
2021-12-24 16:36:03
MyBatis-Plus 集成动态多数据源的实现示例
2023-06-26 17:56:35
Java常用函数式接口总结
2022-02-02 00:02:50
Android仿人人客户端滑动菜单的侧滑菜单效果
2021-06-01 08:07:06
c# 读取XML文件的示例
2023-11-04 00:51:17
maven资源过滤打包后文件变大的处理方法
2023-10-05 21:38:24
Android仿Flipboard动画效果的实现代码
2022-07-29 13:52:02
c#关于JWT跨域身份验证的实现代码
2023-09-12 18:26:02
c#实现16进制和字符串之间转换的代码
2023-07-22 08:28:09
Java中文件操作功能小结
2023-06-20 03:32:28
关于Mybatis插入对象时空值的处理
2023-08-28 21:58:00
浅谈Java线程Thread之interrupt中断解析
2023-07-19 09:25:11
springboot的yml配置文件通过db2的方式整合mysql的教程
2023-08-06 04:28:55
详解C# 虚方法virtual
2022-11-05 09:41:17
使用递归实现数组求和示例分享
2023-04-24 02:17:40
解决Android软键盘弹出覆盖h5页面输入框问题
2023-06-19 11:33:24
Android Dialog对话框实例代码讲解
2021-12-18 06:34:50
Android编程实现调用相册、相机及拍照后直接裁剪的方法
2023-12-19 10:27:08