Что такое сущности JPA? - PullRequest
       20

Что такое сущности JPA?

4 голосов
/ 20 марта 2012

Я начинаю использовать JPA, и меня всегда путают с понятием сущностей и их использованием, я много читал, но до сих пор не совсем понял.Я прочитал документацию по Oracle, но на самом деле она не объясняет его роль в транзакции.

Что такое JPA?действительно ли они содержат данные для каждой строки, я имею в виду, хранятся ли они экземпляры, которые содержат данные строки?или они просто отображают таблицы базы данных, а затем вставляют и удаляют в них?

например, если я использую это:

 entity.setUserName("michel");

Затем сохраните его, затем измените имя пользователя и persisitigэто снова (то есть слияние)

Меняет ли это ранее введенное имя пользователя?или это создает новую строку в БД?

Ответы [ 2 ]

13 голосов
/ 20 марта 2012

Entity - это примерно то же самое, что и экземпляр класса, когда вы думаете с точки зрения кода или строки в таблице (в основном), когда вы думаете с точки зрения базы данных.

Итак,по сути, это постоянный / постоянный экземпляр класса.Изменение значений в нем работает так же, как изменение значений в любом другом экземпляре класса.Разница в том, что вы можете сохранить эти изменения, и, как правило, текущее состояние экземпляра класса (объекта) перезапишет значения, которые строка для этого экземпляра (объекта) имела в базе данных, на основе первичного ключа в соответствии базы данных.«id» или подобное поле в экземпляре класса (сущности).

Конечно, есть исключения из этого поведения, но в целом это действительно так.

0 голосов
/ 20 марта 2012

Это модель.Это объект домена, который можно сохранить.Не думай об этом.Сродни модели Rails.И помните, что модели (в этой парадигме) изменчивы!

...