Java 如何在使用连接查询时使用sequelize将模型数组添加到node js中的另一个模型

Java 如何在使用连接查询时使用sequelize将模型数组添加到node js中的另一个模型,java,mysql,node.js,sequelize.js,Java,Mysql,Node.js,Sequelize.js,因此,我将一个应用程序从JAVA迁移到Nodejs。DB模式分为源模式和事实模式。每个源可以有多个事实,每个事实都分配给一个源。现在在JAVA中运行以下查询时: SELECT SRC.SRC_ID, SRC.SRC_NM, FACTS.FACT_ID, FACT_NM, FACT_VAL FROM TDAV_ALM_SRC_REG_M SRC LEFT OUTER JOIN TDAV_SRC_FACTS_M FACTS ON SRC.SRC_ID = FACTS.SRC_ID WHERE

因此,我将一个应用程序从JAVA迁移到Nodejs。DB模式分为源模式和事实模式。每个源可以有多个事实,每个事实都分配给一个源。现在在JAVA中运行以下查询时:

SELECT SRC.SRC_ID, SRC.SRC_NM, FACTS.FACT_ID, FACT_NM, FACT_VAL 
FROM TDAV_ALM_SRC_REG_M SRC 
LEFT OUTER JOIN TDAV_SRC_FACTS_M FACTS ON SRC.SRC_ID = FACTS.SRC_ID 
WHERE SRC.SRC_ID = ?
我使用xml中定义的以下映射规则:

<resultMap id="sourceResult" type="com.sec.davs.olap.dto.OLAPSourceConfigDto">  
  <result property="src_id" column="src_id"/>
   <result property="src_nm" column="src_nm"/>
    <collection property="factsList" ofType="com.sec.davs.olap.dto.OLAPFactsDto">     
        <result property="fact_id" column="fact_id"/> 
        <result property="fact_nm" column="fact_nm"/> 
        <result property="fact_val" column="fact_val"/> 
  </collection>
</resultMap>
ORM使用联接查询并将匹配事实的所有行映射到源中的数组中。我的UI也设计用于处理上述响应

现在在NodeJS中,我使用的是sequelize。我已经为Source创建了一个模型,为Facts创建了一个模型,在两者之间创建了一个与Source.hasMany(Facts)的关联,并运行了完全相同的查询

以下是模型和查询:

const facts=sequelize.define('fact', {
    FACT_ID: {
        type: Sequelize.INTEGER,
        primaryKey: true
      },
      FACT_NM: {
        type: Sequelize.STRING
      },
      FACT_VAL: {
        type: Sequelize.STRING
      },
      SRC_ID: {
        type: Sequelize.INTEGER
      }
  },{
    tableName: 'Facts_Master',
    freezeTableName: true,
    timestamps: false
  });

  const sources=sequelize.define('source', {
    SRC_ID: {
        type: Sequelize.INTEGER,
        primaryKey: true
      },
      SRC_NM: {
        type: Sequelize.STRING
      }
  },{
    tableName: 'Source_Master',
    freezeTableName: true,
    timestamps: false
  });

sources.hasMany(facts,{
    foreignKey: 'SRC_ID'
})

sources.findAll({
        raw: true,
        include: [{model: facts}],
        where:{
            SRC_ID : 56
        }
    }).then(data => {
        var json=JSON.stringify({
            result:data
        });
console.log("New Data:"+json)
})
这将产生如下结果:

{
    "result": [{
        "SRC_ID": 56,
        "SRC_NM": "ALM_SRC2",
        "facts.FACT_ID": 38,
        "facts.FACT_NM": "DTIME",
        "facts.FACT_VAL": "dtime",
        "facts.SRC_ID": 56
    }, {
        "SRC_ID": 56,
        "SRC_NM": "ALM_SRC2",
        "facts.FACT_ID": 39,
        "facts.FACT_NM": "DUID",
        "facts.FACT_VAL": "duid",
        "facts.SRC_ID": 56
    }]
}
是否可以使用sequelize并创建与JAVA中相同的映射,而无需更改查询或应用一些查询后格式

提前谢谢

{
    "result": [{
        "SRC_ID": 56,
        "SRC_NM": "ALM_SRC2",
        "facts.FACT_ID": 38,
        "facts.FACT_NM": "DTIME",
        "facts.FACT_VAL": "dtime",
        "facts.SRC_ID": 56
    }, {
        "SRC_ID": 56,
        "SRC_NM": "ALM_SRC2",
        "facts.FACT_ID": 39,
        "facts.FACT_NM": "DUID",
        "facts.FACT_VAL": "duid",
        "facts.SRC_ID": 56
    }]
}