422828
столько раз учителя, ученики и родители
посетили сайт «Инфоурок»
за прошедшие 24 часа
+Добавить материал
и получить бесплатное
свидетельство о публикации
в СМИ №ФС77-60625 от 20.01.2015
Дистанционные курсы профессиональной переподготовки и повышения квалификации для педагогов

Дистанционные курсы для педагогов - курсы профессиональной переподготовки от 5 480 руб.;
- курсы повышения квалификации от 1 400 руб.
Московские документы для аттестации

ВЫБРАТЬ КУРС СО СКИДКОЙ 60%

ВНИМАНИЕ: Скидка действует ТОЛЬКО до 28 февраля!

(Лицензия на осуществление образовательной деятельности №038767 выдана ООО "Столичный учебный центр", г.Москва)

Инфоурок / Информатика / Презентации / Hibernate, fundamentals. Part 1. Для студентов старших курсов университета

Hibernate, fundamentals. Part 1. Для студентов старших курсов университета


Напоминаем, что в соответствии с профстандартом педагога (утверждён Приказом Минтруда России), если у Вас нет соответствующего преподаваемому предмету образования, то Вам необходимо пройти профессиональную переподготовку по профилю педагогической деятельности. Сделать это Вы можете дистанционно на сайте проекта "Инфоурок" и получить диплом с присвоением квалификации уже через 2 месяца!

Только сейчас действует СКИДКА 50% для всех педагогов на все 184 курса профессиональной переподготовки! Доступна рассрочка с первым взносом всего 10%, при этом цена курса не увеличивается из-за использования рассрочки!

ВЫБРАТЬ КУРС И ПОДАТЬ ЗАЯВКУ
библиотека
материалов
Использование Hibernate Java Persistence Для студентов старших курсов универс...
Hibernate — библиотека для языка программирования Java, предназначенная для р...
Step 1: Download the Hibernate 4.3.x : First of all you have to download the...
STEP 1-3 Download the Hibernate 4.3.x : First of all you have to download the...
Давайте напишем небольшое приложение, использующее библиотеку Hibernate для х...
)
)
Для просмотра базы данных нужно установить SQL-developer http://www.oracle.co...
STEP 4 Create model class Опишем наш класс-сущность, который будем хранить в...
import org.hibernate.annotations.GenericGenerator; @Entity @Table(name="Stude...
Аннотации здесь используются для Mapping (сопоставление) Java классов с табли...
Step 5 Create hibernate.cfg file - Create the configuration file of Hibernate...
Параметр " hibernate.hbm2ddl.auto " устанавливаем в значение “true” для того,...
Step 6: Create the utility class for getting SessionFactory Теперь создадим п...
import org.hibernate.cfg.Configuration; public class HibernateUtil {     priv...
Step 7: Write the code for testing the Hibernate example The Data Access Obje...
package DAO; import java.sql.SQLException; import java.util.List; import logi...
Теперь определим реализацию этого интерфейса в классе SudentDAOImpl в пакете...
package DAO.Impl; import java.sql.SQLException; import java.util.ArrayList; i...
Давайте создадим класс Factory в пакете DAO, к которому будем обращаться за н...
package DAO; import DAO.Impl.StudentDAOImpl; public class Factory {          ...
Ну вот и все! Осталось только посмотреть как это работает: package main; impo...
Итак, общая схема того, что нужно знать о Hibernate изображена ниже.
Успехов!

Описание презентации по отдельным слайдам:

1 слайд Использование Hibernate Java Persistence Для студентов старших курсов универс
Описание слайда:

Использование Hibernate Java Persistence Для студентов старших курсов университетов Ст.преподаватель Дудник О.А.

2 слайд Hibernate — библиотека для языка программирования Java, предназначенная для р
Описание слайда:

Hibernate — библиотека для языка программирования Java, предназначенная для решения задач объектно-реляционного отображения (object-relational mapping — ORM). Она представляет собой свободное программное обеспечение с открытым исходным кодом (open source), распространяемое на условиях GNU Lesser General Public License.

3 слайд
Описание слайда:

4 слайд Step 1: Download the Hibernate 4.3.x : First of all you have to download the
Описание слайда:

Step 1: Download the Hibernate 4.3.x : First of all you have to download the Hibernate 4.3.x latest release. Step 2: Create database and table - Next you have to create database and tables Step 3: Add libraries: You should create project and add the Hibernate libraries files. You will also have to add the dataBase’s JDK driver jar file. Step 4: Create model class Step 5: Create hibernate.cfg file - Create the configuration file of Hibernate framework Step 6: Create the utility class for getting SessionFactory Step 7: Write the code for testing the Hibernate example - finally test the application.

5 слайд STEP 1-3 Download the Hibernate 4.3.x : First of all you have to download the
Описание слайда:

STEP 1-3 Download the Hibernate 4.3.x : First of all you have to download the Hibernate 4.3.x latest release Create database and table - Next you have to create database and tables

6 слайд Давайте напишем небольшое приложение, использующее библиотеку Hibernate для х
Описание слайда:

Давайте напишем небольшое приложение, использующее библиотеку Hibernate для хранения и обработки таблицы СУБД Oracle. Для начала нам нужно скачать Hibernate. http://hibernate.org/orm/downloads/ Также нам понадобиться скачать и установить СУБД Oracle. http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index-092322.html

7 слайд )
Описание слайда:

)

8 слайд )
Описание слайда:

)

9 слайд Для просмотра базы данных нужно установить SQL-developer http://www.oracle.co
Описание слайда:

Для просмотра базы данных нужно установить SQL-developer http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html , который работает только с JDK 1.6(нужно установить)

10 слайд
Описание слайда:

11 слайд STEP 4 Create model class Опишем наш класс-сущность, который будем хранить в
Описание слайда:

STEP 4 Create model class Опишем наш класс-сущность, который будем хранить в БД(в пакете logic):

12 слайд import org.hibernate.annotations.GenericGenerator; @Entity @Table(name="Stude
Описание слайда:

import org.hibernate.annotations.GenericGenerator; @Entity @Table(name="Student") public class Student {         private Long id;         private String name;         private Long age;         public Student(){         name = null;     }         public Student(Student s){         name = s.getName();     }           @Id     @GeneratedValue(generator="increment")     @GenericGenerator(name="increment", strategy = "increment")     @Column(name="id")     public Long getId() {         return id;     }         @Column(name="name")     public String getName(){         return name;     }         @Column(name="age")     public Long getAge(){         return age;     }         public void setId(Long i){         id = i;         }         public void setName(String s){         name = s;     }           public void setAge(Long l){         age = l;     }   }

13 слайд Аннотации здесь используются для Mapping (сопоставление) Java классов с табли
Описание слайда:

Аннотации здесь используются для Mapping (сопоставление) Java классов с таблицами базы данных. Проще говоря для того, чтобы Hibernate знал, что данный класс является сущностью, то есть объекты данного класса мы будем хранить в базе данных. Использованные здесь аннотации имеют следующий смысл: @Entity — указывает на то, что данный класс является сущностью. @Table — задает имя таблицы, в которой будут храниться объекты класса @Id — обозначает поле id @GeneratedValue и @GenericGenerator — указывает на то, как будет генерироваться id (у нас — по возрастанию) @Column — обозначает имя колонки, соответствующей данному полю.

14 слайд Step 5 Create hibernate.cfg file - Create the configuration file of Hibernate
Описание слайда:

Step 5 Create hibernate.cfg file - Create the configuration file of Hibernate framework Теперь создадим главный конфигурационный файл hibernate.cfg.xml и помести его в папку bin нашего проекта. Из этого файла Hibernate будет брать всю необходимую ему информацию

15 слайд
Описание слайда:

<!DOCTYPE hibernate-configuration PUBLIC     "-//Hibernate/Hibernate Configuration DTD 3.0//EN“   "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="connection.driver_class"> oracle.jdbc.driver.OracleDriver</property> <property name="connection.url"> jdbc:oracle:thin:@localhost:1521:MyDB</property>   <property name="connection.username"> Your_Login</property> <property name="connection.password"> Your_Password</property> <propertyname="connection.pool_size"> 10</property> <property name="dialect"> org.hibernate.dialect.OracleDialect</property> <property name="show_sql">true</property> <property name="hbm2ddl.auto"> update</property> <property name= "hibernate.connection.autocommit">false</property> <property name= "current_session_context_class">thread</property> <mapping class="logic.Student" /> </session-factory> </hibernate-configuration>

16 слайд Параметр &quot; hibernate.hbm2ddl.auto &quot; устанавливаем в значение “true” для того,
Описание слайда:

Параметр " hibernate.hbm2ddl.auto " устанавливаем в значение “true” для того, чтобы объекты базы данных создавались автоматически на основе маппинга в java-hibernate проекте.

17 слайд Step 6: Create the utility class for getting SessionFactory Теперь создадим п
Описание слайда:

Step 6: Create the utility class for getting SessionFactory Теперь создадим пакет util, а в нем класс HibernateUtil, который будет отвечать за обработку данного xml файла и установление соединения с нашей базой данных: package util;

18 слайд import org.hibernate.cfg.Configuration; public class HibernateUtil {     priv
Описание слайда:

import org.hibernate.cfg.Configuration; public class HibernateUtil {     private static SessionFactory sessionFactory = null;         static {         try {                 sessionFactory = new Configuration().configure().buildSessionFactory();         } catch (Exception e) {               e.printStackTrace();         }     }     public static SessionFactory getSessionFactory() {         return sessionFactory;     } }

19 слайд Step 7: Write the code for testing the Hibernate example The Data Access Obje
Описание слайда:

Step 7: Write the code for testing the Hibernate example The Data Access Object (DAO) pattern Для класса-сущности, определим интерфейс StudentDAO из пакета DAO, содержащий набор необходимых методов:

20 слайд package DAO; import java.sql.SQLException; import java.util.List; import logi
Описание слайда:

package DAO; import java.sql.SQLException; import java.util.List; import logic.Student; public interface StudentDAO {     public void addStudent(Student student) throws SQLException;   //добавить студента     public void updateStudent(Student student) throws SQLException;//обновить студента     public Student getStudentById(Long id) throws SQLException;    //получить стедента по id     public List getAllStudents() throws SQLException;              //получить всех студентов     public void deleteStudent(Student student) throws SQLException;//удалить студента }

21 слайд Теперь определим реализацию этого интерфейса в классе SudentDAOImpl в пакете
Описание слайда:

Теперь определим реализацию этого интерфейса в классе SudentDAOImpl в пакете DAO.Impl:

22 слайд package DAO.Impl; import java.sql.SQLException; import java.util.ArrayList; i
Описание слайда:

package DAO.Impl; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import javax.swing.JOptionPane; import org.hibernate.Session; import util.HibernateUtil; import DAO.StudentDAO; import logic.Student; public class StudentDAOImpl implements StudentDAO {  public void addStudent(Student stud) throws SQLException {    Session session = null;      try {                 session = HibernateUtil.getSessionFactory().openSession();                 session.beginTransaction();                 session.save(stud);                 session.getTransaction().commit();             } catch (Exception e) {                 JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка I/O", JOptionPane.OK_OPTION);             } finally {                 if (session != null && session.isOpen()) {                     session.close();                 }             }       }       public void updateStudent(Student stud) throws SQLException {             Session session = null;             try {                 session = HibernateUtil.getSessionFactory().openSession();                 session.beginTransaction();                 session.update(stud);                 session.getTransaction().commit();             } catch (Exception e) {                 JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка I/O", JOptionPane.OK_OPTION);             } finally {                 if (session != null && session.isOpen()) {                     session.close();                 }             }       }       public Student getStudentById(Long id) throws SQLException {             Session session = null;             Student stud = null;             try {                 session = HibernateUtil.getSessionFactory().openSession();                 stud = (Student) session.load(Student.class, id);             } catch (Exception e) {                 JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка I/O", JOptionPane.OK_OPTION);             } finally {                 if (session != null && session.isOpen()) {                     session.close();                 }             }             return stud;       }       public List<Student> getAllStudents() throws SQLException {             Session session = null;             List<Student> studs = new ArrayList<Student>();             try {                 session = HibernateUtil.getSessionFactory().openSession();                 studs = session.createCriteria(Student.class).list();             } catch (Exception e) {                 JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка I/O", JOptionPane.OK_OPTION);             } finally {                 if (session != null && session.isOpen()) {                     session.close();                 }             }             return studs;       }       public void deleteStudent(Student stud) throws SQLException {             Session session = null;             try {                 session = HibernateUtil.getSessionFactory().openSession();                 session.beginTransaction(); session.load(stud, id); session.delete(stud);                 session.getTransaction().commit();             } catch (Exception e) {                 JOptionPane.showMessageDialog(null, e.getMessage(), "Ошибка I/O", JOptionPane.OK_OPTION);             } finally {                 if (session != null && session.isOpen()) {                     session.close();                 }             }       }   }

23 слайд Давайте создадим класс Factory в пакете DAO, к которому будем обращаться за н
Описание слайда:

Давайте создадим класс Factory в пакете DAO, к которому будем обращаться за нашими реализациями DAO, от которых и будем вызывать необходимые нам методы:

24 слайд package DAO; import DAO.Impl.StudentDAOImpl; public class Factory {          
Описание слайда:

package DAO; import DAO.Impl.StudentDAOImpl; public class Factory {             private static StudentDAO studentDAO = null;       private static Factory instance = null;       public static synchronized Factory getInstance(){             if (instance == null){               instance = new Factory();             }             return instance;       }       public StudentDAO getStudentDAO(){             if (studentDAO == null){               studentDAO = new StudentDAOImpl();             }             return studentDAO;       }   }

25 слайд Ну вот и все! Осталось только посмотреть как это работает: package main; impo
Описание слайда:

Ну вот и все! Осталось только посмотреть как это работает: package main; import java.sql.SQLException; import java.util.List; import logic.Student; import DAO.Factory; public class Main {     public static void main(String[] args) throws SQLException {         //Создадим двух студентов         Student s1 = new Student();         Student s2 = new Student();         //Проинициализируем их         s1.setName("Ivanov Ivan");         s1.setAge(21l);         s2.setName("Petrova Alisa");         s2.setAge(24l);         //Сохраним их в бд, id будут //сгенерированы автоматически         Factory.getInstance().getStudentDAO().addStudent(s1);         Factory.getInstance().getStudentDAO().addStudent(s2);               //Выведем всех студентов из бд         List<Student> studs = Factory.getInstance().getStudentDAO().getAllStudents();         System.out.println("========Все студенты=========");         for(int i = 0; i < studs.size(); ++i) {                 System.out.println("Имя студента : " + studs.get(i).getName() + ", Возраст : " + studs.get(i).getAge() +",  id : " + studs.get(i).getId());                 System.out.println("=============================");                      }           } }

26 слайд Итак, общая схема того, что нужно знать о Hibernate изображена ниже.
Описание слайда:

Итак, общая схема того, что нужно знать о Hibernate изображена ниже.

27 слайд
Описание слайда:

28 слайд Успехов!
Описание слайда:

Успехов!

Краткое описание документа:

Излагаются основы Hibernate и приводится пример его применения в Java-коде.

Hibernate значительно уменьшает время разработки приложений, работающих с базами данных, заботится о связи Java классов с таблицами базы данных (и типов данных Java в типы данных SQL), предоставляет средства для автоматического построения запросов и извлечения данных.

Использование javax.persistence аннотаций, позволяет встроить маппинг сущностей используемой системы хранения (в данном случае hibernate) непосредственно в программый код. Это снижает вероятность появления ошибок и теперь не требуется создавать десятки XML файлов маппинга объектов.

Общая информация

Номер материала: 340307



Очень низкие цены на курсы переподготовки от Московского учебного центра для педагогов

Специально для учителей, воспитателей и других работников системы образования действуют 60% скидки (только до конца зимы) при обучении на курсах профессиональной переподготовки (124 курса на выбор).

После окончания обучения выдаётся диплом о профессиональной переподготовке установленного образца с присвоением квалификации (признаётся при прохождении аттестации по всей России).

Подайте заявку на интересующий Вас курс сейчас: KURSY.ORG

Вам будут интересны эти курсы:

Курс повышения квалификации «Методика преподавания информатики в начальных классах»
Курс повышения квалификации «Современные информационные технологии и их использование в работе преподавателей. Системы автоматизированного проектирования одежды и организация технологического процесса»
Курс «Фирменный стиль» (Corel Draw, Photoshop)
Курс «Оператор персонального компьютера»
Курс «1С: Предприятие 7.7»
Курс «3D Studio MAX»
Курс повышения квалификации «Сетевые и дистанционные (электронные) формы обучения в условиях реализации ФГОС по ТОП-50»
Курс повышения квалификации «Развитие информационно-коммуникационных компетенций учителя в процессе внедрения ФГОС: работа в Московской электронной школе»
Курс профессиональной переподготовки «Информационные технологии в профессиональной деятельности: теория и методика преподавания в образовательной организации»
Курс повышения квалификации «Введение в программирование на языке С (СИ)»
Курс профессиональной переподготовки «Управление в сфере информационных технологий в образовательной организации»
Курс профессиональной переподготовки «Теория и методика обучения информатике в начальной школе»
Курс профессиональной переподготовки «Математика и информатика: теория и методика преподавания в образовательной организации»
Курс повышения квалификации «Современные тенденции цифровизации образования»
Курс повышение квалификации «Применение интерактивных образовательных платформ на примере платформы Moodle»
Включите уведомления прямо сейчас и мы сразу сообщим Вам о важных новостях. Не волнуйтесь, мы будем отправлять только самое главное.