将值之间转换为数据域

时间:2019-07-08 21:40:49

标签: java server domain-mapping

我必须在许多系统之间编写一百多个集成。该集成层必须能够转换代码。每个系统使用代码来表示业务类型,例如insurance_type,customer_type等。它们每个都有一组有效值。这些值在系统之间是不同的,甚至可能随时间变化。

我开始寻找Java中的数据域映射库。我没有找到合适的东西。我想到了:CloverETL,Pentaho ETLou GETL,但是它们对于我的需求来说太复杂了,或者无法维护。

目标是将转换规则排除在代码之外,以便它们可以随着时间的推移而演变,而无需新的可执行程序部署。

我正在寻找一种工具,可以让我表示类似以下内容的映射的库:

{
  "domains" :[
    {
      "name": "type police host",
      "values": [
        {
          "code" : "0001",
          "description":"Habitation",
          "start_date":"2019-06-30",
          "end_date":""},
        {
          "code" : "0002",
          "description":"Automobile",
          "start_date":"2019-06-30",
          "end_date":""}
        ]
    },
    {
      "name": "type police web",
      "values": [
        {
          "code" : "Habitation",
          "description":"Habitation",
          "start_date":"2019-06-30",
          "end_date":""}
      ]
    }
  ],
  "conversions" : [
    {
    "from": "type police host",
    "to": "type police web",
    "rules" : [
      {
        "from": ["0001"],
        "to" : "Habitation",
        "start_date":"2019-06-30",
        "end_date":""},
      {
        "from": [ "0003","0004"],
        "to" : "Deux roues",
        "start_date":"2019-06-30",
        "end_date":""}
      ]
    }
  ]
}

从上面的配置文件中,我可以执行类似convertsAsOf("2019-07-10", "type police host", "type police web", "0001")的操作,并且它将返回"Habitation"。有建议这样做的图书馆吗?

0 个答案:

没有答案