时间:2021-05-20
本文实例讲述了Spring实战之获得Bean本身的id操作。分享给大家供大家参考,具体如下:
一 配置
<?xml version="1.0" encoding="GBK"?><beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd"> <!-- Spring容器会检测容器中所有Bean,如果发现某个Bean实现了BeanNameAware接口, Spring容器会在创建该Bean之后,自动调用该Bean的setBeanName()方法, 调用该方法时,会将该Bean的配置id作为参数传给该方法 该方法的实现部分将Spring传入的参数(Bean的配置id)赋为给该Chinese对象的 beanName实例变量,因此接下来即可通过该beanName实例变量来访问Bean的配置id。--> <bean id="chinese" class="org.crazyit.app.service.Chinese"/></beans>二 Bean
package org.crazyit.app.service;import org.springframework.beans.factory.BeanNameAware;public class Chinese implements BeanNameAware{ // 保存部署该Bean时指定的id属性 private String beanName; public void setBeanName(String name) { this.beanName = name; } public void info() { System.out.println("Chinese实现类" + ", 部署该Bean时指定的id为" + beanName); }}三 测试类
package lee;import org.springframework.context.*;import org.springframework.context.support.*;import org.crazyit.app.service.*;public class SpringTest{ public static void main(String[] args) { // 创建Spring容器,容器会自动预初始化所有Bean实例 ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); Chinese chin = ctx.getBean("chinese" , Chinese.class); chin.info(); }}四 测试结果
Chinese实现类, 部署该Bean时指定的id为chinese
更多关于java相关内容感兴趣的读者可查看本站专题:《Spring框架入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Spring实战之获取其他Bean的属性值操作。分享给大家供大家参考,具体如下:一配置二Bean1Personpackageorg.crazyit
本文实例讲述了Spring实战之搜索Bean类操作。分享给大家供大家参考,具体如下:一配置文件
本文实例讲述了Spring实战之注入嵌套Bean操作。分享给大家供大家参考,具体如下:一配置二接口Axepackageorg.crazyit.app.servi
本文实例讲述了Spring实战之让Bean获取Spring容器操作。分享给大家供大家参考,具体如下:一配置message二资源文件hello=\u6b22\u8
本文实例讲述了Spring实战之调用实例工厂方法创建Bean操作。分享给大家供大家参考,具体如下:一配置二接口Personpackageorg.crazyit.