powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Объясните @Embeddable
5 сообщений из 5, страница 1 из 1
Объясните @Embeddable
    #38703535
JulT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Объясните пожалуйста на пальцах два момента:
1.
Код: java
1.
2.
@Embeddable
public class MyClass {


что означает аннотация @Embeddable, что она дает, а так же что означает следующее:
Код: java
1.
2.
3.
4.
5.
6.
 @Embedded
    @AttributeOverrides({
            @AttributeOverride(name = "address", column = @Column(name = "from_address")),
            @AttributeOverride(name = "latitude", column = @Column(name = "from_lat")),
            @AttributeOverride(name = "longitude", column = @Column(name = "from_long"))
    })


2. Что означает когда над полем стоит следующая конструкция:
Код: java
1.
2.
@Columns(columns = {@Column(name = "money_currency"), @Column(name = "money_amount")})
private Money money;


Спасибо
...
Рейтинг: 0 / 0
Объясните @Embeddable
    #38703546
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1.
http://en.wikibooks.org/wiki/Java_Persistence/Embeddables
Embeddable это "вложеная" сущность. Т.е. отдельная от внешней, но замапленая, обычно, на ту же таблицу.
Чаще всего используется для композитных ключей.
AttributeOverrides используется для маппинга Embedded, либо для override маппинга при наследовании. Он как бы указывает на то, что это колонки таблицы замапленой на внешний класс.

2. Первый раз такое вижу. Это откуда? Судя по всему маппинг для кастомного типа.
...
Рейтинг: 0 / 0
Объясните @Embeddable
    #38703574
JulT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczAttributeOverrides используется для маппинга Embedded, либо для override маппинга при наследовании. Он как бы указывает на то, что это колонки таблицы замапленой на внешний класс.

Спасибо за отклик.
@AttributeOverride(name = "longitude", column = @Column(name = "from_long"))
Это значит, что во время заполнения from_long (поля внешней таблицы, автоматически будут заполняться поля вложенной таблицы, т.е. поле longitude)? Правильно? Вообще где и в каких случаях обычно это используют?
...
Рейтинг: 0 / 0
Объясните @Embeddable
    #38703587
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы путаете таблицы и сущности. Не нужно.
Я ведь, написал выше. Чаще всего используется для композитных ключей (это когда ключь в таблице состоит из нескольких колонок.)
Иногда используется для сложных типов, вроде Money, Address.
...
Рейтинг: 0 / 0
Объясните @Embeddable
    #38703777
JulT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczВы путаете таблицы и сущности. Не нужно.
Я ведь, написал выше. Чаще всего используется для композитных ключей (это когда ключь в таблице состоит из нескольких колонок.)
Иногда используется для сложных типов, вроде Money, Address.
Благодарю
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Объясните @Embeddable
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]