您好我是hibernate的新手。我讀了很多關於哪本書以及要閱讀什麼規範的線索和討論。但問題是有些線程太舊,我不知道從哪裏開始。我開始使用Developer Guide中的Hibernate規範,我認爲這太複雜了。所以我讀了一些小教程。 實際上,我被分配到一些項目,我被告知使用了Hibernate。但由於對Hibernate的瞭解不多,我完全失去了知識。在代碼中,我可以看到在Maven pom中使用了Hibernate。我發現META-INF/persistence.xml中包含:Hibernate初學者疑問
<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
<persistence-unit name="EmployeeDatabase" transaction-type="JTA">
<jta-data-source>java:EmpDS</jta-data-source>
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>entity.Employee</class>
<properties>
<property name="hibernate.connection.password" value="Usha" />
<property name="hibernate.archive.autodetection" value="class" />
<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" />
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/Employee" />
<property name="hibernate.connection.username" value="Usha" />
<property name="hibernate.hbm2ddl.auto" value="update" />
<property name="hibernate.show_sql" value="false" />
</properties>
</persistence-unit>
我想對Hibernate的配置已經通過hibernate.cfg.xml的工作要做。但我可以在任何地方找到它。在進行查詢的代碼中,沒有提及hibernate。所有查詢都使用import javax.persistence.Query完成。所以我猜JPQL被用來做查詢。
所以我的問題是:這是真的Hibernate或JPA或什麼?
當我可以說這是使用Hibernate的持久性。
何時使用JPQL以及何時使用HQL?
請任何人都可以引導我通過這個。清楚一點,我想先學習Hibernate,然後再深入研究我的任務。但我不知道從哪裏開始。哪本書或教程是最好的。
最好的問候, Jeena
感謝您的鏈接。這與我在代碼中的查詢操作完全相同。所以這意味着我們應該只使用JPQL,因爲這是最新的。但仍然存在我對hibernate和JPA的懷疑。所以只是爲了讓我的頭腦清楚。 JPA是一種爲數據庫CRUD提供不同方法的API。而Hibernate提供了這些操作的實現並實際執行這些操作。它需要JPQL查詢並將其轉換爲SQL,並將結果返回。正確? – Jeena