引言
現(xiàn)在的Web開發(fā)越來越注重對數(shù)據(jù)訪問層的封裝和管理,因此,ORM(對象關(guān)系映射)技術(shù)的應(yīng)用越來越廣泛。Hibernate作為十分著名的ORM框架,其底層支持多種數(shù)據(jù)庫,本文將重點(diǎn)介紹Hibernate如何連接MySQL數(shù)據(jù)庫。
在項(xiàng)目中引入Hibernate和MySQL Driver
首先,在你的Java Web項(xiàng)目中引入Hibernate和MySQL相關(guān)依賴的jar包。本文中以Maven為例,你可以在你項(xiàng)目的POM.xml文件中添加如下兩個(gè)依賴:
<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>5.4.17.Final</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.19</version> </dependency>
編寫Hibernate.cfg.xml配置文件
接著,我們需要編寫Hibernate.cfg.xml配置文件,其作用是告訴Hibernate如何連接MySQL數(shù)據(jù)庫和實(shí)體類的映射。
下面是一個(gè)簡單的Hibernate.cfg.xml配置文件:
<?xml version="1.0" encoding="UTF-8"?> <hibernate-configuration> <session-factory> <property name="hibernate.connection.driver_class">com.mysql.cj.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/my_database?serverTimezone=UTC</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password">your_passwor</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQL8Dialect</property> </session-factory> </hibernate-configuration>
測試連接
現(xiàn)在,我們已經(jīng)配置好了Hibernate.cfg.xml配置文件,接下來可以通過以下代碼測試是否成功連接MySQL數(shù)據(jù)庫。
Configuration configuration = new Configuration().configure(); SessionFactory sessionFactory = configuration.buildSessionFactory(); Session session = sessionFactory.openSession(); Transaction transaction = session.beginTransaction(); try { // 進(jìn)行數(shù)據(jù)庫操作 transaction.commit(); } catch (Exception e) { transaction.rollback(); } finally { session.close(); }
結(jié)論
現(xiàn)在你已經(jīng)成功連接MySQL數(shù)據(jù)庫,可以進(jìn)行對數(shù)據(jù)庫的操作了。
注意:MySQL8.0以上的版本需要使用com.mysql.cj.jdbc.Driver驅(qū)動程序,而不是原來的com.mysql.jdbc.Driver驅(qū)動程序。