Предположим, что таблица базы данных Customer
, которая отображается в класс Customer
, имеет больше полей, а затем описана в аннотациях.Не читайте поля с Hibernate?
Возможно ли прочитать любое из таких не отображаемых полей?
Предположим, что таблица базы данных Customer
, которая отображается в класс Customer
, имеет больше полей, а затем описана в аннотациях.Не читайте поля с Hibernate?
Возможно ли прочитать любое из таких не отображаемых полей?
Если вы не хотите сопоставлять их своим Клиентам. Вы можете создать второй объект Customer, такой как SpecialCustomer, где вы можете сопоставить все, что хотите, и не отображаться в клиенте. Если у вас есть поле, которое отличается между двумя типами клиентов, вы можете использовать @DiscriminatorColumn и значение дополнительно.
Ознакомьтесь с стратегией наследования Hibernate Inheritance. https://docs.jboss.org/hibernate/orm/3.5/reference/en/html/inheritance.html
В качестве альтернативы, если вы действительно действительно не хотите сопоставлять какие-либо дополнительные классы и поля, у вас есть возможность использовать запрос NativeSQL и сопоставить результаты с какой-либо структурой по вашему выбору.
http://www.thoughts-on-java.org/result-set-mapping-basics/
Если бы я был на вашем месте, я бы для SpecialCustomer подхода.
Нельзя ли как-то получить доступ к исходным необработанным данным? – Dims
Абсолютно нет! Hibernate генерирует SQL из сопоставлений. В этом конкретном случае нет таких необработанных данных AS, потому что дополнительные поля даже не содержатся в наборе результатов. Сори, я понимаю, что это не тот ответ, на который вы надеялись. –
Не могу ли я настроить процесс генерации SQL для добавления обязательных полей в набор результатов? – Dims