<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # Hibernate 插入查詢教程 > 原文: [https://howtodoinjava.com/hibernate/hibernate-insert-query-tutorial/](https://howtodoinjava.com/hibernate/hibernate-insert-query-tutorial/) Hibernate 是 Java 語言的對象關系映射(ORM)庫,它提供了將面向對象的域模型映射到傳統關系數據庫的框架。 這意味著不需要構建和執行與數據庫交互的 SQL 查詢。 您只需要通過調用 Hiberate API 來指示 Hiberate,Hiberate 將代表您創建并執行這些 SQL 查詢。 在這個 [Hiberate 教程](https://howtodoinjava.com/hibernate-tutorials/)中,我給出了在單個表中插入數據的示例。 我們在應用中有一個對象,即`Employee`。 我們想將其存儲在數據庫中。 `Employee`類具有以下屬性: * 員工編號 – 整數 * 電子郵件 – 字符串 * 名 – 字符串 * 姓 – 字符串 它可以有更多的字段,但是我僅用四個來舉例說明。 ## 1\. Hiberate 實體類 Hiberate 與標記為 Hiberate 實體的 Java POJO 類進行對話。 要將 Java 類轉換為實體,我們需要在其上應用`@Entity`注解。 還有其他 **Hiberate 注解**,例如`@Table`,`@Column`和`@Id`等,它們有助于將實體字段映射到數據庫表和列 。 應用注解后,`Employee`實體類如下所示。 ```java @Entity @Table(name = "EMPLOYEE", uniqueConstraints = { @UniqueConstraint(columnNames = "ID"), @UniqueConstraint(columnNames = "EMAIL") }) public class EmployeeEntity implements Serializable { private static final long serialVersionUID = -1798070786993154676L; @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "ID", unique = true, nullable = false) private Integer id; @Column(name = "EMAIL", unique = true, nullable = false, length = 100) private String email; @Column(name = "FIRST_NAME", unique = false, nullable = false, length = 100) private String firstName; @Column(name = "LAST_NAME", unique = false, nullable = false, length = 100) private String lastName; //Getters and setters } ``` ## 2\. Hiberate 配置 下一步是在“`hibernate.cgf.xml`”文件中配置 Hiberate。 該文件包含系統和數據庫連接元數據中的所有可用實體。 ```java <?xml version="1.0" encoding="utf-8"?> <!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="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernatedemo</property> <property name="hibernate.connection.password">password</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> <property name="show_sql">true</property> <property name="hbm2ddl.auto">create</property> <mapping class="hibernate.test.dto.EmployeeEntity"></mapping> </session-factory> </hibernate-configuration> ``` ## 3\. Hibernate `SessionFactory` 現在,Hiberate 配置已經就緒,我們必須構建 **Hiberate 會話工廠**。 會話工廠用于獲取數據庫以及各種活動(如提交和回滾)的連接。 ```java public class HibernateUtil { private static final SessionFactory sessionFactory = buildSessionFactory(); private static SessionFactory buildSessionFactory() { try { // Create the SessionFactory from hibernate.cfg.xml return new AnnotationConfiguration().configure(new File("hibernate.cgf.xml")).buildSessionFactory(); } catch (Throwable ex) { // Make sure you log the exception, as it might be swallowed System.err.println("Initial SessionFactory creation failed." + ex); throw new ExceptionInInitializerError(ex); } } public static SessionFactory getSessionFactory() { return sessionFactory; } public static void shutdown() { // Close caches and connection pools getSessionFactory().close(); } } ``` ## 4\. Hibernate 插入查詢示例 最后,我們將使用此 Hiberate 會話工廠執行插入查詢以將員工保存在數據庫中。 ```java public class TestHibernateInsert { public static void main(String[] args) { Session session = HibernateUtil.getSessionFactory().openSession(); session.beginTransaction(); //Add new Employee object EmployeeEntity emp = new EmployeeEntity(); emp.setEmail("lokesh@mail.com"); emp.setFirstName("lokesh"); emp.setLastName("gupta"); //Save the employee in database session.save(emp); //Commit the transaction session.getTransaction().commit(); HibernateUtil.shutdown(); } } ``` 程序日志。 ```java Hibernate: insert into EMPLOYEE (EMAIL, FIRST_NAME, LAST_NAME) values (?, ?, ?) ``` 讓我們驗證數據庫中的數據。 ![Hibernate insert query example](https://img.kancloud.cn/d4/c0/d4c0c2219f0de73e951ba9e6df61d3e4_591x199.png) Hibernate 插入查詢示例 ## 5\. 故障排除 1. 請確保在項目中添加 Hiberate 和 **mysql 驅動依賴項**。 在 Maven 中,這些如下: ```java <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-commons-annotations</artifactId> <version>3.0.0.ga</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-annotations</artifactId> <version>3.3.0.ga</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.6</version> </dependency> ``` 2. 驗證`hibernate.cgf.xml`文件存在并且具有有效的數據庫元數據。 [下載源碼](https://docs.google.com/file/d/0B7yo2HclmjI4WHN1b0F1VjhLblU/edit?usp=sharing "下載源碼") 學習愉快!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看