spring的aware接口简书,springboot aware接口

  spring的aware接口简书,springboot aware接口

  春天中有很多继承于知道的中的接口,这些接口到底是做什么用到的。

  意识到,翻译过来是知道的,已感知的,意识到的,所以这些接口从字面意思应该是能感知到所有知道的前面的含义。

  先举个回调接口的例子,实现回调接口接口,可以让该豆感知到自身的BeanName(对应春天容器的处理属性)属性,举个例子:

  BeanNameAware接口的定义:

  公共接口回调接口扩展了Aware { void set beanname(字符串名);}定义两个用户,一个实现BeanNameAware,一个不实现。

  包com。github。杰特伦。弹簧接口。演示。意识到了。beannameaware导入org。spring框架。豆子。工厂。beannameaware/** *由码头于18/1/31创建。*/公共类用户实现BeanNameAware {私有字符串id私有字符串名称;私有字符串地址;public void set bean name(String bean name){//ID保存BeanName的值id=beanName}公共字符串getId(){返回id;} public void setId(String id){ this。id=id} public String getName(){ return name;} public void set name(String name){ this。name=名称;}公共字符串getAddress() {返回地址;} public void setAddress(字符串地址){ this . address=address } @ Override public String to String(){ return User { id= id ,name= name ,address= address } } } package com。github。杰特伦。弹簧接口。演示。意识到了。beannameaware导入org。spring框架。豆子。工厂。beannameaware/** *由码头于18/1/31创建。*/公共类用户2 {私有字符串id;私有字符串名称;私有字符串地址;公共字符串getId(){返回id;} public void setId(String id){ this。id=id} public String getName(){ return name;} public void set name(String name){ this。name=名称;}公共字符串getAddress() {返回地址;} public void setAddress(字符串地址){ this . address=address } @ Override public String to String(){ return User { id= id ,name= name ,address= address } }在Spring配置文件中初始化两个对象:

  bean id=张三class= com。github。杰特伦。弹簧接口。演示。意识到了。beannameaware。用户属性名称=名称值=张三/property属性名称=地址值=火星/property/bean bean id= Lisi class= com。github。杰特伦。弹簧接口。演示。意识到了。beannameaware。用户2 属性名=名称值= Lisi /属性属性名=地址值=火星/property /beanmain方法测试一下回调接口接口所起的作用public static void main(String[]args){ application context context=new classpathmlaplicationcontext( class path : application-bean aware。XML’);用户user=上下文。获取bean(用户。类);系统。出去。println(字符串。格式(实现了回调接口接口的信息BeanId=%s,所有信息=%s ,user.getId(),user。tostring()));用户2用户2=上下文。getbean(用户2。类);系统。出去。println(字符串。格式(未实现回调接口接口的信息BeanId=%s,所有信息=%s ,user2.getId(),user2。tostring());}运行结果:

  实现了回调接口接口的信息BeanId=张三,所有信息=用户{id=张三,姓名=张三,地址=火星}未实现回调接口接口的信息BeanId=null,所有信息=用户{id=null ,名称=lisi ,地址=火星}

  能够看到,我们在实现了回调接口的用户中,获取到了春天容器中的BeanId(对应春天配置文件中的编号属性),而没有实现回调接口的用户2,则不能获取到春天容器中的身份属性。

  因此,BeanNameAware接口被设计为使其自己的Bean能够感知并获得Spring容器中自己的id属性。

  类似地,其他感知接口被设计成能够感知它们自己的一些属性。例如,实现ApplicationContextAware接口的类可以获取ApplicationContext,实现BeanFactoryAware接口的类可以获取BeanFactory对象。

  关于Spring中aware接口细节的这篇文章就到这里了。有关aware interface的更多信息,请搜索Popular IT以前的文章或继续浏览下面的相关文章。我希望你以后能更多地支持流行音乐!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: