【RPC系列】4、自定义xml标签(用netty、zk手写RPC第一步)
发布日期:2021-06-24 15:28:53 浏览次数:3 分类:技术文章

本文共 1444 字,大约阅读时间需要 4 分钟。

自定义xml标签(用netty、zk手写RPC)

从XML认识XSD

废话不多说,xsd(xml schema defition)的作用如下

Xml Schema的用途:

  • 定义一个Xml文档中元素以及元素的属性
  • 定义某个节点的层级关系
  • 定义元素或者属性的数据类型以及默认值

直接上例子,下面这个就是一个自定义的xml标签结合了spring的标签完成的bean配置

首先我们要在Java工程的resources下面新建文件META-INF,在这个文件夹下面定义两个文件,分别是spring.handlers(配置了标签的解析类,就比如server这个标签应该怎么处理)和spring.schemas(别名与实际xsd文件路径的映射)

在这里插入图片描述
这里把rpc.xsd的定义也放在了一起,看一下两个文件的配置:
spring.handlers(其中“:”是需要转义符\的)

http://rpc.kaer.com/schema/rpc=com.kaer.rpc.demo.config.spring.MyNamespaceHandler

spring.schemas

http://rpc.kaer.com/schema/rpc/rpc.xsd=META-INF/rpc.xsd

下面一步步来,先看xsd是如何定义的

看一下MyNamespaceHandler的简单定义

public class MyNamespaceHandler extends NamespaceHandlerSupport {
@Override public void init() {
registerBeanDefinitionParser("consumer", new MyBeanDefinitionParser(ConsumerBean.class)); registerBeanDefinitionParser("provider", new MyBeanDefinitionParser(ProviderBean.class)); registerBeanDefinitionParser("server", new MyBeanDefinitionParser(ServerBean.class)); }}

以上就完成了从xsd到xml的定义配置。

下一节将如果将服务注册到zk的节点上

转载地址:https://blog.csdn.net/weixin_33602978/article/details/105285910 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:【RPC系列】5、向Zookeeper上注册服务(用netty、zk手写RPC第二步)
下一篇:【Docker问题】CentOS安装docker后运行报错Get https://registry-1.docker.io/v2/

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月13日 12时52分05秒