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

从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. 兼容ie6的mvvm框架--san

    最近,由于公司项目需要,使用百度mvvm框架san开发了一个兼容ie6的小项目.san的优势是强大的兼容性,能兼容到ie6.当初我自己好奇,尝试用san做了一个小型项目,这里记录一下.如果你也想尝试一 ...

  2. 【Android】一个好用的sharedpreferences存储类方法

    其实我也不知道sharedpreferences究竟安全不安全,毕竟是android中最简单的存储机制. 如果你手机root了的话,使用MT管理器到data/data/包名/shared_prefs下 ...

  3. 【Codeforces 478C】Table Decorations

    [链接] 我是链接,点我呀:) [题意] 给你r,g,b三种颜色的气球 每张桌子要放3个气球 但是3个气球的颜色不能全都一样 (允许两个一样,或者全都不一样) 问你最多能装饰多少张桌子 [题解] 先把 ...

  4. Redis学习总结(1)——Redis内存数据库详细教程

    1.redis是什么 2.redis的作者何许人也 3.谁在使用redis 4.学会安装redis 5.学会启动redis 6.使用redis客户端 7.redis数据结构 – 简介 8.redis数 ...

  5. 1、ceph-deploy之部署ceph集群

    环境说明 server:3台虚拟机,挂载卷/dev/vdb 10G 系统:centos7.2 ceph版本:luminous repo: 公网-http://download.ceph.com,htt ...

  6. OpenCV 基于超像素分割的图像区域选取方法及源码

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51386993 工程源码GitHub: ...

  7. CodeForces - 205B - Little Elephant and Sorting

    先上题目: Little Elephant and Sorting time limit per test 1 second memory limit per test 256 megabytes i ...

  8. nyoj_60_谁获得了最高奖学金_201311281117

    谁获得了最高奖学金 时间限制:1000 ms  |           内存限制:65535 KB 难度:2   描述     某校的惯例是在每学期的期末考试之后发放奖学金.发放的奖学金共有五种,获取 ...

  9. iOS的四种传值方式

    传值有四种方法 : 1. 属性传值 2. 单例传值 3. 代理传值 4. block传值     一.属性传值   (前-->后) 1. 后面的界面定义一个属性  存放前一个界面传过来的值    ...

  10. HDU 5226

    公式啊,公式啊....TAT 杭电题解.....高中生...... 对于卢卡斯定理,由于p较大,所以不可能按一般的来算,n,m较小,循处理出n!的逆元对p的,然后可以按照卢卡斯定理,降低,对后面的就可 ...