我们知道各业务系统之间通讯,需要交换报文,而每个厂商开发的业务系统,定义的报文格式和字段命名不尽相同。如果有 A、B 两个系统之间要对接,最笨的方法就是,其中一个系统 A 基于另一个系统 B 的报文规则去做适配改造,即让 A、B 两个系统之间的报文格式,字段名称,甚至通讯协议都保持一致。
如果不采用上述方式,而是在 A、B 两系统之间提供一个转换(映射)程序,实现两个系统之间的灵活映射,这样就不需要 A 和 B 系统做任何改造,像 ESB 之类的产品可以实现这种转换,但比较笨重,也有 xml 与 json 之间互转的开源包(比如 json-lib),但这种转换太过简单,希望有一种比较轻量级的开源包,能够实现如下转换:
场景 1:
<root> <name>小李子</name></root>
映射为
<data> <person> <username>小李子</username> </person></data>
场景 2:
<root> <name>小李子</name></root>
映射为
{ "data":{ "students":{ "student":{ "username":"小李子" } } } }
也就是既能在不同报文格式之间映射互转,也能在不同字段名称之间映射互转,实现两个业务系统之间报文的兼容性。
SMILET
森林海
相关分类