01.Hibernate快速入門

第一步:下載Hibernate5的運行環境mysql

  https://sourceforge.net/projects/hibernate/files/hibernate-orm/sql

第二步:在數據庫建立表數據庫

Create database hibernate_day01;
    Use hibernate_day01;
    CREATE TABLE `cst_customer` (
      `cust_id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT '客戶編號(主鍵)',
      `cust_name` varchar(32) NOT NULL COMMENT '客戶名稱(公司名稱)',
      `cust_user_id` bigint(32) DEFAULT NULL COMMENT '負責人id',
      `cust_create_id` bigint(32) DEFAULT NULL COMMENT '建立人id',
      `cust_source` varchar(32) DEFAULT NULL COMMENT '客戶信息來源',
      `cust_industry` varchar(32) DEFAULT NULL COMMENT '客戶所屬行業',
      `cust_level` varchar(32) DEFAULT NULL COMMENT '客戶級別',
      `cust_linkman` varchar(64) DEFAULT NULL COMMENT '聯繫人',
      `cust_phone` varchar(64) DEFAULT NULL COMMENT '固定電話',
      `cust_mobile` varchar(16) DEFAULT NULL COMMENT '移動電話',
      PRIMARY KEY (`cust_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=94 DEFAULT CHARSET=utf8;

 第三步:搭建Hibernate的開發環境session

  建立WEB工程而且引入Hibernate所須要的包app

  • MySQL的驅動jar包

  • Hibernate開發須要的jar包(/lib/required/全部jar包)
  • 日誌jar包(資料/jar包/log4j/全部jar包)

第四步:編寫JavaBean實體類dom

    public class Customer {
        private Long cust_id;
        private String cust_name;
        private Long cust_user_id;
        private Long cust_create_id;
        private String cust_source;
        private String cust_industry;
        private String cust_level;
        private String cust_linkman;
        private String cust_phone;
        private String cust_mobile;
        // 省略get和set方法
    }

第五步:建立類與表結構的映射測試

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE hibernate-mapping PUBLIC 
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

    <hibernate-mapping>
        <class name="com.itheima.domain.Customer" table="cst_customer">
            <id name="cust_id" column="cust_id">
                <generator class="native"/>
            </id>
            <property name="cust_name" column="cust_name"/>
            <property name="cust_user_id" column="cust_user_id"/>
            <property name="cust_create_id" column="cust_create_id"/>
            <property name="cust_source" column="cust_source"/>
            <property name="cust_industry" column="cust_industry"/>
            <property name="cust_level" column="cust_level"/>
            <property name="cust_linkman" column="cust_linkman"/>
            <property name="cust_phone" column="cust_phone"/>
            <property name="cust_mobile" column="cust_mobile"/>
        </class>
    </hibernate-mapping>

第六步:編寫Hibernate核心的配置文件ui

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://www.hibernate.org/dtd/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:///hibernate_day01</property>
            <property name="hibernate.connection.username">root</property>
            <property name="hibernate.connection.password">root</property>
            <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>

            <mapping resource="com/itheima/domain/Customer.hbm.xml"/>
        </session-factory>
    </hibernate-configuration>

第七步:編寫Hibernate入門代碼url

    /**
     * 測試保存客戶
     */
    @Test
    public void testSave(){
        // 先加載配置文件
        Configuration config = new Configuration();
        // 默認加載src目錄下的配置文件
        config.configure();
        // 建立SessionFactory對象
        SessionFactory factory = config.buildSessionFactory();
        // 建立session對象
        Session session = factory.openSession();
        // 開啓事務
        Transaction tr = session.beginTransaction();
        // 編寫保存代碼
        Customer c = new Customer();
        // c.setCust_id(cust_id);   已經自動遞增
        c.setCust_name("測試名稱");
        c.setCust_mobile("110");
        // 保存客戶
        session.save(c);
        // 提交事務
        tr.commit();
        // 釋放資源
        session.close();
        factory.close();
    }
相關文章
相關標籤/搜索