Статьи

Как использовать Hibernate в приложении на платформе NetBeans

В этом уроке я покажу, как объединить приложение платформы NetBeans с Hibernate. Для этого простого примера начала я использую основные функции Hibernate.

Это руководство основано на приложении администрирования пациентов, созданном с помощью Geertjan во время сертифицированной учебной сессии по платформе NetBeans в Буркина-Фасо . Приложение очень простое. Он позволяет вставлять и удалять пациента, а также позволяет получать список пациентов для отображения в окне обозревателя:

Создать базу данных

Прежде всего вам необходимо создать базу данных « mydatabase », как показано на рисунке ниже. В качестве примера базы данных не требуется пароль администратора:



Во-вторых, создайте таблицу с именем «пациент», используя следующий скрипт:

Создать приложение на платформе NetBeans

Как указано выше, учебное пособие основано на приложении, созданном в ходе учебной сессии по платформе NetBeans. Существует три основных модуля: ModelPatient , PatientView и PatientWindows . Четвертый, hibernate , — это модуль библиотеки-оболочки.




ModelPatient содержит класс POJO, файлы сопоставления и файл конфигурации Hibernate:

Класс POJO здесь называется «Patient.java». Вы можете посмотреть здесь список исходного кода:

Вы должны создать файл сопоставления следующим образом:

Чтобы разрешить файлу сопоставления доступ к объекту «Пациент», необходимо указать абсолютный путь к классу «Пациент» в приведенном выше файле сопоставления следующим образом:

<class name="org.netbeans.modelpatient.Patient" table="patient">







Важным файлом, который необходимо создать, является файл конфигурации Hibernate. Я назвал это hibernate.cfg.xml :






Чтобы разрешить файлу конфигурации Hibernate доступ к ресурсу сопоставления, необходимо указать абсолютный путь к файлу сопоставления. В моем примере выше файл сопоставления находится в пакете org.netbeans.patientmodel . Тогда в файле конфигурации у меня есть следующее:

<mapping resource="org/netbeans/modelpatient/Patient.hbm.xml"/>

HibernateUtil.java — это стандартный класс Java, который позволяет выполнять операции сохранения. Фабрика сессий важна для Hibernate. Он реализует шаблон проектирования, который обеспечивает использование только одного экземпляра сеанса для каждого потока. Вы должны получить ваш сеанс Hibernate только с этой фабрики:

Эта часть кода чрезвычайно важна. Когда файл конфигурации Hibernate отсутствует в CLASSPATH, вы должны явно указать его путь, как показано выше:

    static {
URL myurl = Thread.currentThread().getContextClassLoader().getResource("org/netbeans/modelpatient/hibernate.cfg.xml");
sessionFactory = new Configuration().configure(myurl).buildSessionFactory();
}

Чтобы настроить Log4J, создайте файл с именем log4j.properties в корневом каталоге и вставьте следующее:

Модуль библиотеки оболочки «hibernate» содержит библиотеки Hibernate и MySQL:


PatientWindows предоставляет окно с двумя кнопками «Сохранить» и «Отмена»:

Вот исходный код для кнопки Сохранить:

Под кнопкой «Отмена» добавьте этот код, чтобы выйти из приложения:

LifecycleManager.getDefault().exit();
 

API, необходимые для этого модуля:

 

В модуле PatientView необходимо внести изменения, чтобы динамически задавать список пациентов из базы данных в узел. Здесь метод «createKeys» в узле используется следующим образом:

 

API, необходимые в этом модуле: