Hibernate est un framework Java ORM utilisé pour établir un mappage entre les objets Java et les bases de données relationnelles. Son mécanisme ORM comprend les étapes suivantes : Annotation/Configuration : La classe d'objets est marquée avec des annotations ou des fichiers XML, spécifiant ses tables et colonnes de base de données mappées. Fabrique de sessions : gère la connexion entre Hibernate et la base de données. Session : représente une connexion active à la base de données et est utilisée pour effectuer des opérations de requête et de mise à jour. Persistance : enregistrez les données dans la base de données via la méthode save() ou update(). Requête : utilisez les critères et HQL pour définir des requêtes complexes afin de récupérer des données.
Mécanisme ORM du framework Java Hibernate
Introduction
Hibernate est un framework Java Object Relational Mapping (ORM) populaire qui permet un mappage transparent entre les objets Java et les bases de données relationnelles. Le rôle d'un ORM est de gérer le processus de conversion de l'état des objets en enregistrements de base de données et vice versa, simplifiant ainsi le développement et la maintenance du code d'accès aux données.
Mécanisme ORM
Hibernate utilise des annotations Java ou des fichiers de configuration XML pour définir le mappage des objets aux tables de base de données. Il implémente ORM à travers les étapes clés suivantes :
@Entity
, @Table
) ou XML. fichiers de configuration, spécifiant la table et la colonne de la base de données auxquelles il correspond. @Entity
、@Table
)或 XML 配置文件进行标记,指定其映射到数据库中的哪个表和列。save()
或 update()
方法持久化。Criteria
和 HQL
(Hibernate 查询语言)用于定义复杂查询,检索数据。实战案例
我们创建一个 Java 类 Employee
来表示数据库中的员工表:
@Entity @Table(name = "employees") public class Employee { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int id; private String name; private int salary; // 省略getter、setter和构造方法 }
在 main()
方法中,我们使用 Hibernate 配置文件 (hibernate.cfg.xml
) 创建一个会话工厂,打开一个会话,保存一个 Employee
save()
ou update()
. 🎜🎜Requête : 🎜Criteria
et HQL
(Hibernate query Language) sont utilisés pour définir des requêtes complexes et récupérer des données. 🎜🎜Cas pratique🎜🎜🎜Nous créons une classe Java Employee
pour représenter la table des employés dans la base de données : 🎜public static void main(String[] args) { // 创建会话工厂 SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); // 打开会话 Session session = sessionFactory.openSession(); session.beginTransaction(); // 保存一个Employee对象 Employee employee = new Employee(); employee.setName("John Doe"); employee.setSalary(10000); session.save(employee); // 查询所有Employee对象 List<Employee> employees = session.createQuery("from Employee", Employee.class).list(); // 打印员工信息 for (Employee emp : employees) { System.out.println(emp.getName() + " - " + emp.getSalary()); } // 提交事务并关闭会话 session.getTransaction().commit(); session.close(); }🎜Dans
main()
Dans cette méthode, nous utilisons le fichier de configuration Hibernate (hibernate.cfg.xml
) pour créer une fabrique de sessions, ouvrir une session, enregistrer un objet Employee
et récupérer tous employés : 🎜rrreeeCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!