为了提高日常工作效率,自己在闲暇时间写了一款工具,功能界面如下图所示:

从ESB文档中复制报文字段、字段类型、报文字段注释,选择生成文件路径并输入文件名:

输入完毕后点击生成按钮,自动生成Context=>Router报文格式:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE segment SYSTEM "packet.dtd">
<segment>
<xmlTag><String name="CompanyName"></String></xmlTag><!--单位名称-->
<xmlTag><String name="DrivingLicenseId"></String></xmlTag><!--驾驶证号码-->
<xmlTag><String name="ClientName"></String></xmlTag><!--客户名称-->
<xmlTag><String name="DetailAddress"></String></xmlTag><!--地址明细-->
<xmlTag><String name="DoAddress"></String></xmlTag><!--发生地-->
<xmlTag><String name="DoneType"></String></xmlTag><!--行为代码-->
<xmlTag><String name="DoneText"></String></xmlTag><!--行为内容-->
<xmlTag><String name="TranDatetime"></String></xmlTag><!--处理日期时间-->
<xmlTag><String name="UnlawfulDatetime"></String></xmlTag><!--处罚日期时间-->
<xmlTag><String name="MotorNoteType"></String></xmlTag><!--机动车号牌类型-->
<xmlTag><String name="MotorNoteNo"></String></xmlTag><!--机动车号牌号码-->
<xmlTag><String name="DueFee"></String></xmlTag><!--应缴费 -->
<xmlTag><String name="DelayAmt"></String></xmlTag><!--滞纳金-->
<xmlTag><String name="DebtTotalAmt"></String></xmlTag><!--应收总金额 -->
</segment>

自动生成Router=>Esb报文格式:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE segment SYSTEM "packet.dtd">
<segment>
<xmlFld tagName="COMPANY_NAME" length="10"><String name="CompanyName"></String></xmlFld><!--单位名称-->
<xmlFld tagName="DRIVING_LICENSE_ID" length="15"><String name="DrivingLicenseId"></String></xmlFld><!--驾驶证号码-->
<xmlFld tagName="CLIENT_NAME" length="60"><String name="ClientName"></String></xmlFld><!--客户名称-->
<xmlFld tagName="DETAIL_ADDRESS" length="20"><String name="DetailAddress"></String></xmlFld><!--地址明细-->
<xmlFld tagName="DO_ADDRESS" length="100"><String name="DoAddress"></String></xmlFld><!--发生地-->
<xmlFld tagName="DONE_TYPE" length="10"><String name="DoneType"></String></xmlFld><!--行为代码-->
<xmlFld tagName="DONE_TEXT" length="80"><String name="DoneText"></String></xmlFld><!--行为内容-->
<xmlFld tagName="TRAN_DATETIME" length="64"><String name="TranDatetime"></String></xmlFld><!--处理日期时间-->
<xmlFld tagName="UNLAWFUL_DATETIME" length="32"><String name="UnlawfulDatetime"></String></xmlFld><!--处罚日期时间-->
<xmlFld tagName="MOTOR_NOTE_TYPE" length="10"><String name="MotorNoteType"></String></xmlFld><!--机动车号牌类型-->
<xmlFld tagName="MOTOR_NOTE_NO" length="2"><String name="MotorNoteNo"></String></xmlFld><!--机动车号牌号码-->
<xmlFld tagName="DUE_FEE" length="60"><String name="DueFee"></String></xmlFld><!--应缴费 -->
<xmlFld tagName="DELAY_AMT" length="10"><String name="DelayAmt"></String></xmlFld><!--滞纳金-->
<xmlFld tagName="DEBT_TOTAL_AMT" length="10"><String name="DebtTotalAmt"></String></xmlFld><!--应收总金额 -->
</segment>

Esb=>Context报文格式:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE segment SYSTEM "packet.dtd">
<segment>
<xmlTag tagName="CompanyName"><String name="COMPANY_NAME"></String></xmlTag><!--单位名称-->
<xmlTag tagName="DrivingLicenseId"><String name="DRIVING_LICENSE_ID"></String></xmlTag><!--驾驶证号码-->
<xmlTag tagName="ClientName"><String name="CLIENT_NAME"></String></xmlTag><!--客户名称-->
<xmlTag tagName="DetailAddress"><String name="DETAIL_ADDRESS"></String></xmlTag><!--地址明细-->
<xmlTag tagName="DoAddress"><String name="DO_ADDRESS"></String></xmlTag><!--发生地-->
<xmlTag tagName="DoneType"><String name="DONE_TYPE"></String></xmlTag><!--行为代码-->
<xmlTag tagName="DoneText"><String name="DONE_TEXT"></String></xmlTag><!--行为内容-->
<xmlTag tagName="TranDatetime"><String name="TRAN_DATETIME"></String></xmlTag><!--处理日期时间-->
<xmlTag tagName="UnlawfulDatetime"><String name="UNLAWFUL_DATETIME"></String></xmlTag><!--处罚日期时间-->
<xmlTag tagName="MotorNoteType"><String name="MOTOR_NOTE_TYPE"></String></xmlTag><!--机动车号牌类型-->
<xmlTag tagName="MotorNoteNo"><String name="MOTOR_NOTE_NO"></String></xmlTag><!--机动车号牌号码-->
<xmlTag tagName="DueFee"><String name="DUE_FEE"></String></xmlTag><!--应缴费 -->
<xmlTag tagName="DelayAmt"><String name="DELAY_AMT"></String></xmlTag><!--滞纳金-->
<xmlTag tagName="DebtTotalAmt"><String name="DEBT_TOTAL_AMT"></String></xmlTag><!--应收总金额 -->
</segment>

项目结构如下图所示,总代码不超过1w行,源码已分享到Github:https://github.com/rongbo-j/msg-generator-tool-v1.0

ESB报文自动生成工具的更多相关文章

  1. h5自动生成工具

    一.前言 写了很多h5之后,对于写手写html和css已经麻木的我决定动手写个工具自动生成h5结构和样式.其实这个想法由来已久,但总是觉得自己技术不够,所以一直没实行.直到某天我真的写够了,我决定动手 ...

  2. 代码自动生成工具MyGeneration之一(程序员必备工具)

    代码自动生成工具MyGeneration之一(程序员必备工具) 转 分类: C#2008-08-06 18:12 16064人阅读 评论(12) 收藏 举报 工具数据库相关数据库stringbrows ...

  3. Makefile自动生成工具-----autotools的使用(详细)

    相信每个学习Linux的人都知道Makefile,这是一个很有用的东西,但是编写它是比较复杂,今天介绍一个它的自动生成工具,autotools的使用.很多GNULinux的的软件都是用它生成Makef ...

  4. Asp.net mvc 5 CRUD代码自动生成工具- vs.net 2013 Saffolding功能扩展

    Asp.net mvc 5 CRUD代码自动生成工具 -Visual Studio.net2013 Saffolding功能扩展 上次做过一个<Asp.net webform scaffoldi ...

  5. springboot成神之——swagger文档自动生成工具

    本文讲解如何在spring-boot中使用swagger文档自动生成工具 目录结构 说明 依赖 SwaggerConfig 开启api界面 JSR 303注释信息 Swagger核心注释 User T ...

  6. 基于数据库的代码自动生成工具,生成JavaBean、生成数据库文档、生成前后端代码等(v6.0.0版)

    TableGo v6.0.0 版震撼发布,此次版本更新如下: 1.UI界面大改版,组件大调整,提升界面功能的可扩展性. 2.新增BeautyEye主题,界面更加清新美观,也可以通过配置切换到原生Jav ...

  7. C# 代码自动生成工具

    开源:C# 代码自动生成工具,支持站点前后台   前言 写这个项目有很长一段时间了,期间也修修改改,写到最后,自己也没咋用(研究方向变化了). 正文 具体项目开源了:https://github.co ...

  8. iBatis 代码自动生成工具 iBator 及 Example 使用

    iBator的下载和安装 官方下载地址:http://people.apache.org/builds/ibatis/ibator/ 安装:见<Eclipse 插件安装> 安装完成后,“F ...

  9. CoolPlist 帧动画自动生成工具

    工具英文名称:CoolPlist作者: 陈前帆 thinkingMan | sonny 邮箱: 625936034@qq.com | chenqianfan1@163.com电话: 136704713 ...

随机推荐

  1. js-2018-11-01 关于break和continue语句

    1.label语句 语法:label: statement 加标签语句一般都要与for语句等循环语句配合使用. 2.break语句 立即退出循环,强制执行循环后面的语句. 3.continue语句 立 ...

  2. POJ3278——Catch That Cow

    Catch That Cow Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 114140   Accepted: 35715 ...

  3. HDU - 5894 Pocky(概率)

    HDU5894—Pocky Problem Description: Let’s talking about something of eating a pocky. Here is a Decore ...

  4. Exception总结

    NO.1 java.lang.NullPointerException 程序遇上了空指针 NO.2 java.lang.ClassNotFoundException 指定的类不存在 NO.3 java ...

  5. 《零压力学Python》 之 第一章知识点归纳

    第一章(初识Python)知识点归纳 Python是从ABC语言衍生而来的 ABC语言是Guido参与设计的一种教学语言,为非专业编程人员所开发的. Python是荷兰程序员 Guido Van Ro ...

  6. java后台处理解析json字符串的两种方式

    简单说一下背景 上次后端通过模拟http请求百度地图接口,得到的是一个json字符串,而我只需要其中的某个key对应的value. 当时我是通过截取字符串取的,后来觉得不太合理,今天整理出了两种处理解 ...

  7. MySQL下做Master/Slave同步,延迟太大怎么办?

    slave的延迟是比较常见的,如果短暂的延迟后还能追上,一般就能接受了.   用innodb不是坏事,会减少一些slave中止的情况.如果是myisam的表,insert update delete操 ...

  8. 联赛前集训日记Day2

    考试 倒数第二,我已经废了= = T1 那么水的点转区间都看不出来 T2 裸的线段树生打了个啥都不是的分块 T3 枚举想骗spj的部分分,结果啥都没有 GG 刷题 改题改的也是心累,现在蒙的要死 生活 ...

  9. 清北学堂模拟赛d1t3 听音乐(music)

    题目描述 LYK喜欢听音乐,总共有n首音乐,有m个时刻,每个时刻LYK会听其中一首音乐,第i个时刻会听第ai首音乐.它给自己定了一个规定,就是从听音乐开始,听的每连续n首音乐都是互不相同的.例如当n= ...

  10. Sencha Touch 2.1学习图表Chart概述

    Extjs.chart提供了可视化展现数据的能力,每个图表可以绑定到数据模型Ext.data.Store上, 并随着数据的变换可以自动的更新图表 一个图表对象包括图标风格.坐标(axes).序列(se ...