[英]How to generate metadata with native SQL // how to retrieve the generated data without column names?
我正在嘗試通過 Reactjs 檢索生成的數據。 但是,在spring boot中使用原生SQL查詢生成的數據在JSON文件中沒有元數據/列名; 我不能使用 JPA,因為我的 SQL 查詢是使用 OUTER APPLY。 有人可以向我展示一個使用列名生成數據或使用 Reactjs 從沒有列名的 JSON 文件中檢索數據的解決方案嗎?
下面是我的本機 SQL 查詢及其結果:
@GetMapping
public List<Client> getClients()
{
List<Client> results = entityManager.createNativeQuery("SELECT top 17 c.CustomerNumber, c.Name, c.Surname, c.Area, c.City, c.Address, c.Enabled, c.CustomerTypeID, c.DateCreated, p.Debit, p.Credit\n" +
"FROM tblCustomer c OUTER APPLY\n" +
" (SELECT TOP (1) p.*\n" +
" FROM tblPayments p\n" +
" WHERE c.CustomerNumber = p.CustomerNumber\n" +
" ORDER BY p.id DESC\n" +
" ) p;")
.getResultList();
return results;
}`
這樣做的結果是:
// http://localhost:8080/api/v1/client
[
[
"000001",
"Pajazit",
"Neziri",
"1",
"Çegran",
"Bake",
"T",
2,
"2016-10-25T00:49:31.000+00:00"
],
你必須告訴 Hibernate 結果應該是什么:
List<Client> results = entityManager.createNativeQuery("SELECT top 17 c.CustomerNumber, c.Name, c.Surname, c.Area, c.City, c.Address, c.Enabled, c.CustomerTypeID, c.DateCreated, p.Debit, p.Credit\n" +
"FROM tblCustomer c OUTER APPLY\n" +
" (SELECT TOP (1) p.*\n" +
" FROM tblPayments p\n" +
" WHERE c.CustomerNumber = p.CustomerNumber\n" +
" ORDER BY p.id DESC\n" +
" ) p;",
Client.class) // THIS WAS MISSING
.getResultList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.