Реализовал один ко многим, используя jdbc согласно требованию, используя Map для уникальных значений и список в нем для второй таблицы,
while (rs.next()) {
String id = rs.getString("REQUEST_ID");
String name = rs.getString("REQUEST_ITEM_ID");
String email = rs.getString("REQUEST_ITEM_PARAMETER_VALUE");
RequestItem requestItem = (RequestItem) requestItemById.get(id);
if (requestItem == null) {
requestItem = new RequestItem(id, name);
requestItemById.put(requestItem.getRequestId(), requestItem);
}
requestItem.addRequestItemParameter(email);
}
это сгенерирует JSON в следующем формате
{
"5618b87b-4c60-4f38-b18e-053f41ca75a9":{
"requestId":"5618b87b-4c60-4f38-b18e-053f41ca75a9",
"accountNumber":"199e7660-de84-4a98-b245-f45d2d313798",
},
"8141c3a4-c35c-4cd5-b9be-dd2dc878ce36":{
"requestId":"8141c3a4-c35c-4cd5-b9be-dd2dc878ce36",
"accountNumber":"f0e9db42-7fe4-4e69-85f5-d0fbd03c7f47",
"requestItemParameter":[
"3608341209",
"0562254893",
"0"
]
},
"5cc5cb01-e7d2-4e44-9abf-08d202ffee9d":{
"requestId":"5cc5cb01-e7d2-4e44-9abf-08d202ffee9d",
"accountNumber":"f7368f6a-3561-4cc7-b8a8-3120d81e5965",
"requestItemParameter":[
"0562254893"
]
},...
угловой стол
<ng-container matColumnDef="requestId">
<mat-header-cell *matHeaderCellDef mat-sort-header> Request Id </mat-header-cell>
<mat-cell *matCellDef="let row"> {{rows[$index].requestId}} </mat-cell>
</ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;">
</mat-row>
</mat-table>
Я много раз искал его в Интернете, чтобы отобразить этот json в таблицу угловых матов, но поскольку angular принимает только массив json, я попытался преобразовать его в JSON.parse и другие методы java и typscript, но без усиления.