Spring实战之获得Bean本身的id操作示例

 更新时间:2019年11月25日 09:00:22   作者:cakincqm  
这篇文章主要介绍了Spring实战之获得Bean本身的id操作,结合实例形式分析了spring获取Bean本身id的相关配置与实现技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • Java使用@EnableEurekaServer实现自动装配详解

    Java使用@EnableEurekaServer实现自动装配详解

    这篇文章主要介绍了Java使用@EnableEurekaServer实现自动装配过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-10-10
  • 详解springboot WebTestClient的使用

    详解springboot WebTestClient的使用

    WebClient是一个响应式客户端,它提供了RestTemplate的替代方法。这篇文章主要介绍了详解springboot WebTestClient的使用, 具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • Java中处理XML数据的方法

    Java中处理XML数据的方法

    本文介绍了在Java中处理XML数据的几种常见方法:DOM、SAX和JAXB,每种方法都有其适用的场景和优缺点,具体选择取决于项目的需求和性能考虑,这篇文章主要介绍了Java中处理XML数据的方法,需要的朋友可以参考下
    2024-06-06
  • Java实现选择排序算法的实例教程

    Java实现选择排序算法的实例教程

    这篇文章主要介绍了Java实现选择排序算法的实例教程,选择排序的时间复杂度为О(n&sup2;),需要的朋友可以参考下
    2016-05-05
  • JAVA中的OutputStreamWriter流解析

    JAVA中的OutputStreamWriter流解析

    这篇文章主要介绍了JAVA中的OutputStreamWriter流解析,OutputStreamWriter提供了一种方便的方式将字符数据写入到输出流中,并进行字符编码转换,它是Java中处理字符流和字节流之间转换的重要工具之一,需要的朋友可以参考下
    2023-10-10
  • Java源码解析重写锁的设计结构和细节

    Java源码解析重写锁的设计结构和细节

    这篇文章主要为大家介绍了Java源码解析重写锁的设计结构和细节,这小节我们以共享锁作为案列,自定义一个共享锁。有需要的朋友可以借鉴参考下
    2022-03-03
  • Idea打包springboot项目没有.original文件解决方案

    Idea打包springboot项目没有.original文件解决方案

    这篇文章主要介绍了Idea打包springboot项目没有.original文件解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Spring 事务事件监控及实现原理解析

    Spring 事务事件监控及实现原理解析

    本文首先会使用实例进行讲解Spring事务事件是如何使用的,然后会讲解这种使用方式的实现原理。感兴趣的朋友跟随小编一起看看吧
    2018-09-09
  • 浅谈resultMap的用法及关联结果集映射

    浅谈resultMap的用法及关联结果集映射

    这篇文章主要介绍了resultMap的用法及关联结果集映射操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • 浅谈springboot @Repository与@Mapper的区别

    浅谈springboot @Repository与@Mapper的区别

    本文主要介绍了浅谈springboot @Repository与@Mapper的区别,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03

最新评论