Как преобразовать результат запроса SQL в объект Java (POJO), а затем сравнить фактический ответ, т.е. уже преобразованнJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как преобразовать результат запроса SQL в объект Java (POJO), а затем сравнить фактический ответ, т.е. уже преобразованн

Сообщение Anonymous »


How to convert SQL query result to Java Object(POJO) and then compare actual response i.e already converted to Java Object(POJO)

Main Issue I am facing is SQL column name are different from Actual Json Response key. API Response as below:

{ "uuid": "00a26ea4-6be3-47dd-8ee6-2f52a71d98b6", "email": "pulkit.agrawal+4353746031@gmail.com", "firstName": "Pulkit", "lastName": "Agrawal", "businessName": "MMIS Test 1709386721967", "phoneNumber": "4029559455", "marketingInfo": { "utm_campaign": "Commerce_WhereToBuy" }, "resellerUuid": "47HMNNZ9BPF8E", "order": { "uuid": "366ae541-899b-420a-9112-0897406bf7ae", "hasSubscriptions": false, "planId": "4NKNCTE5RGV5P", "planName": "Counter Service Restaurant", "keyedInRate": { "percentage": 3.5, "fixedAmount": { "value": 0.20, "currencyCode": "USD" } }, "inPersonRate": { "percentage": 2.3, "fixedAmount": { "value": 0.10, "currencyCode": "USD" } }, "shippingAddress": { "lineOne": "131 Varick St", "lineTwo": "11", "city": "New York", "state": "NY", "zipCode": "10014" }, "items": [ { "uuid": "64e2172d-bd99-4dcc-8f04-b39d24f64614", "fdmpId": "777-1000108721", "displayName": "Flex", "purchaseType": "P", "quantity": 1, "price": { "value": 599.00, "currencyCode": "USD" }, "digitalCatalogId": "FLEX_GEN_3" }, { "uuid": "ff873f43-09d6-4fd6-9613-78703e1b1b19", "fdmpId": "93183", "displayName": "Station Solo", "purchaseType": "P", "quantity": 1, "price": { "value": 1699.00, "currencyCode": "USD" }, "digitalCatalogId": "STATION_SOLO_CASH_DRAWER" } ] }, "salesforceId": "00Q8J000001uPewUAE", "salesforceOwnerId": "00G7j000001EdZdEAK", "chainAgentId": "526975216882", "clAnalyticsId": "d356c4dec6af56976d667364b3f41b6e779dde2aaf027edf9cfe74cf288505f0", "modifiedTime": "2024-03-02T13:38:43.908+00:00" } SQL Results as below:
Изображение

Изображение


Code I am trying:

Lead requestCreateLead = leadBuilder(); Response response = LeadAPI.put(requestCreateLead); assertThat(response.statusCode(), equalTo(StatusCode.CODE_200.getCode())); LeadResponse actualResponseLead = response.as(LeadResponse.class); String url = "jdbc:mysql://127.0.0.1:3306/growth?useSSL=false&allowPublicKeyRetrieval=true"; String username = "growth-api"; String password = "test123"; String driver = "com.mysql.cj.jdbc.Driver"; DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setDriverClassName(driver); dataSource.setUrl(url); dataSource.setUsername(username); dataSource.setPassword(password); jdbc = new JdbcTemplate(dataSource); String query = "Select * from growth.merchant_lead where email = 'pulkit.agrawal@gmail.com' order by created_time desc"; LeadResponse expectedResponseLead = jdbc.queryForObject(query, LeadResponse.class); Getting error as below in the last line:
org.springframework.jdbc.IncorrectResultSetColumnCountException: Incorrect column count: expected 1, actual 21

Источник: https://stackoverflow.com/questions/780 ... actual-res
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»