Относительно политики получения Toplink - PullRequest
0 голосов
/ 21 апреля 2010

Я работаю над проектом Swing, и используемые технологии - это NetBeans с базовыми данными Toplink, mysql.

Проблема, с которой я сталкиваюсь, заключается в том, что объект сущности не обновляется после выполнения вставок при вызове коллекции получателя свойства внешнего ключа.

Пример: у меня есть 2 таблицы Table1, Table2. У меня есть столбец sno, столбец id в качестве первичного ключа в таблице 1 и внешний ключ в таблице 2. С помощью метода find я просто получаю конкретный объект sno (существующий в таблице 1), устанавливающий некоторые значения в table2 и фиксирующий транзакцию.

Когда я выбираю тот же объект sno с помощью метода find и получаю его коллекцию из Table2 с помощью getTable2Collection () компонента (поскольку он уже создан в bean-компоненте toplink), я не могу получить последнюю добавленную запись, кроме что все остальные записи этого отображаются. После того, как я закрываю приложение и открываю его, новая запись отражается при вызове того же sno через вышеописанный процесс.

Я узнал, что это своего рода ленивая выборка, и должен быть какой-то способ изменения политики выборки, чтобы объект сущности обновлялся с изменениями. Поэтому, пожалуйста, помогите мне в этом.

С уважением,

Chandu

1 Ответ

0 голосов
/ 21 апреля 2010

Если вы просто хотите попробовать активную выборку, вы можете указать метод выборки в своих аннотациях (если вы используете аннотации), и он будет выглядеть примерно так ...

@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER)
...