欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Spring中3种实例Bean的方法及设置Bean的别名

发布时间:2025/3/15 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Spring中3种实例Bean的方法及设置Bean的别名 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

目录

 

 

基本概念

代码及演示

对Bean的感悟


 

基本概念

学习使用Spring实例化Bean

             1. 通过构造方法实例化Bean;

             2. 通过静态方法实例化Bean;

             3. 通过实例方法实例化Bean

 

Spring设置Bean的别名

 

代码及演示

程序运行截图如下:

程序结构如下:

Bean1.java

package bean4test.Ioc;public class Bean1 {public Bean1(){System.out.println("Bean1.Bean1");} }

Bean2.java

package bean4test.Ioc;public class Bean2 {public Bean2(){System.out.println("Bean2.Bean2");} }

Bean2Factory.java

package bean4test.Ioc;public class Bean2Factory {public static Bean2 getBean2(){return new Bean2();} }

Bean3.java

package bean4test.Ioc;public class Bean3 {public Bean3(){System.out.println("Bean3.Bean3");} }

Bean3Factory.java

package bean4test.Ioc;public class Bean3Factory {public Bean3 getBean3(){return new Bean3();} }

spring.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/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsd"><bean class="bean4test.Ioc.Bean1" id="bean1" name="bean1_1, bean1_2"/><alias name="bean1" alias="bean1_3" /><bean class="bean4test.Ioc.Bean2Factory" factory-method="getBean2" id="bean2"/><bean class="bean4test.Ioc.Bean3Factory" id="bean3Factory" /><bean class="bean4test.Ioc.Bean3" factory-bean="bean3Factory"factory-method="getBean3" id="bean3" /> </beans>

DemoApplicaitonTests.java

package bean4test.demo;import bean4test.Ioc.*; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.test.context.junit4.SpringRunner;@RunWith(SpringRunner.class) @SpringBootTest public class DemoApplicationTests {@Testpublic void contextLoads() {ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");Bean1 bean1 = context.getBean("bean1", Bean1.class);System.out.println("bean1 = " + bean1);//传统方法//Bean2 bean2 = Bean2Factory.getBean2();Bean2 bean2 = context.getBean("bean2", Bean2.class);System.out.println("bean2 = " + bean2);//传统方法//Bean3Factory bean3Factory = new Bean3Factory();//Bean3 bean3 = bean3Factory.getBean3();Bean3 bean3 = context.getBean("bean3", Bean3.class);System.out.println("bean3 = " + bean3);//别名Bean1 bean1_1 = context.getBean("bean1_1", Bean1.class);System.out.println("bean1_1 = " + bean1_1);Bean1 bean1_2 = context.getBean("bean1_2", Bean1.class);System.out.println("bean1_2 = " + bean1_2);Bean1 bean1_3 = context.getBean("bean1_3", Bean1.class);System.out.println("bean1_3 = " + bean1_3);} }

 

对Bean的感悟

个人觉得用传统的方法和使用Spring的Bean比较起来,Spring在逻辑上更加的清晰,因为利用了Java反射的机制,而C++程序员喜欢传统的方法,因为这个能看得到!

学了Spring的方法后,发现Java真的很6的语言!

总结

以上是生活随笔为你收集整理的Spring中3种实例Bean的方法及设置Bean的别名的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。