• 服务编排


    1.在META_INF目录下新建My-spring.xsd文件;
    2.新建MyNamespacesHandler类文件,继承NamespaceHandlerSupport:
    新增内部类BeanDefinitionParser extends AbstractSingleBeanDefinitionParser
    新增北部类MyContextBeanDefinitionParser extends MyNamespacesHandler.BeanDefinitionParser,重写doParse方法,编写自定义xsd文件解析逻辑;
    实现init方法,在内部调用registerBeanDefinitionParser方法,注册自定义文件解析类MyContextBeanDefinitionParser;
    3.在META_INF目录下新建Spring.handlers文件,增加如下内容:
    http://www.xxx.com/schema/core=com.xxx.My.spring.handlers.MyNamespacesHandler
    4.在META_INF目录下新建spring.schemas文件,增加如下内容:
    http://www.xxx.com/schema/My/3.0/My-spring.xsd=META-INF/My-spring.xsd
    5.新建使用自定义标签以及Spring标签的bean配置文件,将此配置文件交给Spring进行解析,Spring调用parseCustomElement,调用MyContextBeanDefinitionParser的doParse方法
    6.ServiceRoute解析完成后,调用afterPropertiesSet,注册子元素建造器,根据子元素建造器build和子元素列表processorDefinitions创建子元素处理器Processor
    7.web.xml新建自定义MyServlet extends HttpServlet,重新service方法
    8.请求过来根据url获取处理节点,调用节点的解码、ServiceRoute(根Processor,由根Processor调用子Processor执行具体的处理逻辑)、编码

  • 相关阅读:
    数据库的未来:ORM+LINQ+RX
    工具论-科学是实用工具
    事务、锁与原子性
    ORM-面向对象&关系数据库
    swift Class的内存布局
    使用phpexcel导出到xls文件的时候出现乱码解决
    苹果CMS
    js网页如何获取手机屏幕宽度
    常用正则说明
    php中的线程、进程和并发区别
  • 原文地址:https://www.cnblogs.com/lyrb/p/12911097.html
Copyright © 2020-2023  润新知