您好,登錄后才能下訂單哦!
這篇文章主要介紹“Hibernate注解怎么使用”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Hibernate注解怎么使用”文章能幫助大家解決問題。
Hibernate 是一種簡化應用程序開發的 ORM(對象關系映射)工具。Hibernate提供了一個與存儲在數據庫中的數據進行交互的框架,它還使用 Java Persistence API (JPA) 的規范。
Hibernate 提供注釋以方便 Web 開發。在不使用 hibernate-mapping 文件的情況下,您可以借助 JPA Annotations 將 java 類映射到相應的表。下面列出了一些 JPA 注釋:
i.@Entity - 它用于使 bean 類成為實體 bean,因此它必須包含無參數構造函數。
ii. @Table - 它用于為帶注釋的實體創建表。
iii.@Id – 表中的主鍵用@Id 表示。
iv.@Generatedvalue – 用于自動生成@Id 字段的值。
v.@Column -用于定義屬性映射到的列的詳細信息。
使用hibernate注解時,需要在pom.xml中添加依賴。在<dependencies>…</dependecies> 標簽之間添加依賴。下面列出了一些依賴項:
<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>5.3.1.Final>/version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>6.0.17.Final</version> </dependency>
您需要手動添加 Oracle 依賴項。如果您使用的是 Mysql,那么您需要添加 MySQL jar 或依賴項。
將多個對象封裝成單個對象是通過 POJO 類或 Bean 類來完成的。
bean 類的所有變量都使用公共 setter 和 getter 方法設置為私有。
這里我們在 bean 類中使用 Annotations。
Bean 類- Book.java
import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name="Book01") public class Book { @Id @GeneratedValue(strategy=GenerationType.AUTO) private int bno; @Column(name="bname") private String bname; @Column(name="price") private int price; public int getBno() { return bno; } public void setBno(int bno) { this.bno = bno; } public String getBname() { return bname; } public void setBname(String bname) { this.bname = bname; } public int getPrice() { return price; } public void setPrice(int price) { this.price = price; } }
配置文件的名稱應該是 hibernate.cfg.xml。它包含有關映射文件和關系數據庫的信息。
休眠.cfg.xml
<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 5.3//EN" "http://hibernate.sourceforge.net/hibernate-configuration-5.3.dtd"> <hibernate-configuration> <session-factory> <property name="hibernate.hbm2ddl.auto">update</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property> <property name="hibernate.connection.url">jdbc:mysql://localhost:3306 /test2</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.username">root</property> <property name="connection.password">root</property> <property name="show_sql">true</property> <mapping class="com.app.Annotate.Book"></mapping> </session-factory> </hibernate-configuration>
它是一個包含用于運行應用程序的main() 方法的類。
讓我們創建AppTest.java。
import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration; public class AppTest {public static void main( String[] args ){ Configuration cfg= new Configuration(); cfg.configure("hibernate.cfg.xml"); SessionFactory fact = cfg.buildSessionFactory(); Session sess= fact.openSession(); sess.beginTransaction(); Book book=new Book(); book.setBno(401); book.setBname("Java Complete Reference"); book.setPrice(550); sess.save(book); sess.getTransaction().commit(); System.out.println("saved successfully "); sess.close(); } }
關于“Hibernate注解怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。