配置例子
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> <dubbo:application name="soa-consumer"/> <dubbo:registry protocol="zookeeper" address="${zookeeper.url}"/> <dubbo:consumer timeout="3000" check="false"/> <dubbo:reference id="StudentService" interface="com.liqiang.test.StudentService"/> </beans>
dubboNamespaceHandler配置
原理参考https://www.cnblogs.com/LQBlog/p/9391229.html
public class dubboNamespaceHandler extends NamespaceHandlerSupport { public dubboNamespaceHandler() { } public void init() { this.registerBeanDeFinitionParser("application", new dubboBeanDeFinitionParser(ApplicationConfig.class, true)); this.registerBeanDeFinitionParser("module", new dubboBeanDeFinitionParser(ModuleConfig.class, true)); this.registerBeanDeFinitionParser("registry", new dubboBeanDeFinitionParser(RegistryConfig.class, true)); this.registerBeanDeFinitionParser("monitor", new dubboBeanDeFinitionParser(MonitorConfig.class, true)); this.registerBeanDeFinitionParser("provider", new dubboBeanDeFinitionParser(ProviderConfig.class, true)); this.registerBeanDeFinitionParser("consumer", new dubboBeanDeFinitionParser(ConsumerConfig.class, true)); this.registerBeanDeFinitionParser("protocol", new dubboBeanDeFinitionParser(ProtocolConfig.class, true)); this.registerBeanDeFinitionParser("service", new dubboBeanDeFinitionParser(ServiceBean.class, true)); this.registerBeanDeFinitionParser("reference", new dubboBeanDeFinitionParser(ReferenceBean.class, false)); this.registerBeanDeFinitionParser("annotation", new AnnotationBeanDeFinitionParser()); } static { Version.checkDuplicate(dubboNamespaceHandler.class); } }
<dubbo:reference id="StudentService" interface="com.liqiang.test.StudentService"/>
ReferenceBean
afterPropertiesSet
因为实现了spirng的InitializingBean接口 所以再初始化之后就会调用
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。