Вы на самом деле хотите, чтобы создать список списков, т.е .:
List<List<String>> listOfLists = ...;
Вы не можете хранить как строки и списки строк в том же списке, который определяется следующим образом. Если вы действительно хотите это сделать, вы должны просто определить List<Object>
, и вы сможете хранить там элементы любого типа. Однако это очень не рекомендуется. В java были введены дженерики для предотвращения такого использования во время компиляции.
Итак, что вы, вероятно, на самом деле хотите, чтобы creatate список список строк, а затем выполнять запросы, которые возвращают списки строк и добавить результат в первом списке:
List<List<String>> list = new LinkedList<List<String>>();
list.addAll(em.createNativeQuery(query1).getResultList());
list.addAll(em.createNativeQuery(query1).getResultList());
Кстати, этот подход не рекомендуется слишком , Обычно, если вы хотите создать n-мерную коллекцию, где n> 1, вы, вероятно, должны создать еще один контейнерный класс, содержащий коллекцию и другие материалы, а затем создать одномерную коллекцию, в которой хранятся экземпляры этого класса.
написать запрос, который вернет SQL 'query1 UNION query2'. –
'list.addAll (em.createNativeQuery (query2) .getResultList());' даст вам список из query1 и query2. Не так ли? – anubhava
query1: «выберите mobile_phone, пароль, first_name, last_name из учетных записей, где mobile_phone = '" + phone + "'" query2: "выберите имя из Mails где user_id = (выберите id из учетных записей, где mobile_phone = '" + phone + "\ ')" – rustock