Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Hibernate сохранение информации о классе 
:(
    Опции темы
jvoid
Дата 4.9.2011, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 26.5.2009

Репутация: нет
Всего: 1



Есть разные классы сохраняемые с помощью Hibernate, например классы Individual и Corporate хранят данные о шаблонах документов List <Template>; Шаблоны Template одинаковы для всех объектов класса Individual, как их правильнее хранить, нужно что то типа static List <Template>
Как вы решаете подобные задачи?
PM MAIL   Вверх
Старовъръ
Дата 5.9.2011, 00:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 491
Регистрация: 8.5.2008

Репутация: 4
Всего: 10



Это похоже на что-то вроде глобальной конфигурации, возможно следует создать класс типа GlobalConfiguration, у которого есть поле List <Template>. 
PM MAIL WWW   Вверх
Farmazon
Дата 5.9.2011, 06:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Разработчик
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 7.7.2006

Репутация: 1
Всего: 5



Так и храни шаблоны индивидуалов в отдельной таблице. Типа individual_templates. 


--------------------
Таково моё общее мнение.
PM MAIL WWW   Вверх
jvoid
Дата 5.9.2011, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 26.5.2009

Репутация: нет
Всего: 1



Сейчас я решаю это так, например земельный участок

Код

@Entity
public class LandArea {

    @Id
    private Long Id;
    static private final String nameObject = new String("LandArea");
         public static String getNameObject() {
        return nameObject;
    }



Код

/**
 * Хранит данные общие для всех объектов класса
 *
 */
@Entity
public class AppObject {

    @Id
    private Long Id;
    @Column
    private String nameObject;
    @OneToMany
// набор шаблонов для класса
    private List<Template> templates;



Код

public class AppObjectDAO {
/** возвращает объект AppObject по имени класса
     * @param nameObject
     * @return
     */
public AppObject getByClassName(String nameObject) {
        
...................................................................


Получаем шаблоны для нужного нам класса:
Код

...................................................................
                        // получаем переменные для шаблона
                        HashMap<String, String> datamodel = landArea
                                .getVarForTemplateDrive();
                        // получаем объект с шаблонами для земельного участка
                        AppObject appObject = new AppObjectDAO()
                                .getByClassName("LandArea");
                        List<Template> templates = new ArrayList<Template>();
                        templates = appObject.getTemplates();
                        TemplateDoDOCGuiI TemplateDoDOCGuiI = new TemplatePrintDialog();
                        TemplateDoDOCGuiI.setTemplates(templates, datamodel);


Что то мне кажется я малость перемудрил, как то это проще можно сделать?

Цитата

Так и храни шаблоны индивидуалов в отдельной таблице. Типа individual_templates


Классов десятки и для каждого свой набор шаблонов.

Это сообщение отредактировал(а) jvoid - 5.9.2011, 10:25
PM MAIL   Вверх
Farmazon
Дата 5.9.2011, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Разработчик
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 7.7.2006

Репутация: 1
Всего: 5



ввести классификатор(поле или отдельную таблицу) для Template?... В Hibernate это может выглядеть как наследование сущностей...

Это сообщение отредактировал(а) Farmazon - 5.9.2011, 11:37


--------------------
Таково моё общее мнение.
PM MAIL WWW   Вверх
jvoid
Дата 5.9.2011, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 26.5.2009

Репутация: нет
Всего: 1



Что то до меня не совсем доходит.
т.е создать объект Template и унаследовать от него  LandAreaTemplate хранить идентификатор в одном из полей Template? Если так тогда нужно создать десятки дополнительных классов унаследованных от Template.
PM MAIL   Вверх
Farmazon
Дата 6.9.2011, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Разработчик
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 7.7.2006

Репутация: 1
Всего: 5



в классах это будет выглядеть так, в базе же может быть одна таблица...


--------------------
Таково моё общее мнение.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0496 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.