一. 概述:hibernate框架是作用于dao層的,實現對數據的持久化保存.通過面向對象的方式操作數據庫。
巴彥網站建設公司創新互聯建站,巴彥網站設計制作,有大型網站制作公司豐富經驗。已為巴彥千余家提供企業網站建設服務。企業網站搭建\外貿營銷網站建設要多少錢,請找那個售后服務好的巴彥做網站的公司定做!
二. hibernate框架的搭建
1.導包
lib目錄下的required文件夾下的所有jar包.
MySQL驅動包.
2.創建數據庫于表.
3.創建實體類.
4.創建實體映射文件(以crm練習Customer類為例)
實體類名.hbm.xml
引入約束文件
<?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"> <!-- 根元素 package(可選):填寫包名.后面凡是需要完整類名的地方,都可以省略包名了. --> <hibernate-mapping package="cn.itcast.domain" > <!-- class:映射類與表的關系 name屬性:實體屬性名 table屬性:對應的表名 --> <class name="Customer" table="cst_customer" > <!-- id:映射主鍵屬性名(OID)與主鍵列對應關系 name屬性: OID名稱 column屬性(可選):主鍵列名,默認值就是name屬性值 length屬性(可選):指定屬性長度.默認值使用數據庫對應列長度 type屬性(可選):指定當前列(屬性)的類型.默認值會根據數據庫類型自動指定類型. type="long" hibernate類型 type="java.lang.Long" java類型 <column name="cust_id" sql-type="bigint" ></column> 數據庫類型 --> <id name="cust_id" > <!--主鍵生成策略 increment:hibernate每次保存數據是,會查詢數據庫中最大的值,在最大值的基礎上加1作為新的主鍵值(測試時使用) identity:主鍵自增,有數據庫負責生成主鍵值 sequence:序列,Oracle時使用 hilo:高低位算法,適用于既不支持自增也不支持序列的庫(用不著) native:identity|sequence|hilo自動三選一 uuid:主鍵類型為字符串是使用. assigned:有我們手動指定ID值 --> <generator class="native"></generator> </id> <!-- property:映射非主鍵屬性名與非主鍵列對應關系 name屬性: 屬性名 column屬性(可選):非主鍵列名,默認值就是name屬性值 length屬性(可選):指定屬性長度.默認值使用數據庫對應列長度 type屬性(可選):指定當前列(屬性)的類型.默認值會根據數據庫類型自動指定類型. type="long" hibernate類型 type="java.lang.Long" java類型 <column name="cust_id" sql-type="bigint" ></column> 數據庫類型 --> <property name="cust_name" column="cust_name" ></property> <property name="cust_source" ></property> <property name="cust_industry" column="cust_industry" ></property> <property name="cust_level" column="cust_level" ></property> <property name="cust_phone" column="cust_phone" ></property> <property name="cust_mobile" column="cust_mobile" ></property> </class> </hibernate-mapping>
創建主配置文件
hibernate.cfg.xml(在src下)
<?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> <!-- 以下都是為sessionFactory對象配置的 --> <session-factory> <!-- 必選配置 //方言 //所有數據庫的sql語句都是基于SQL99標準的 //每個數據庫遵循SQL99標準的同時,也會擴充一部分SQL語句.這些標準之外的sql語句叫做方言 mysql方言: limit 0,5 //注意:mysql方言類一共有3個.一定要選最短的 #hibernate.dialect org.hibernate.dialect.MySQLDialect //數據庫驅動 #hibernate.connection.driver_class com.mysql.jdbc.Driver //數據庫連接url #hibernate.connection.url jdbc:mysql:///test //連接用戶名 #hibernate.connection.username gavin //連接密碼 #hibernate.connection.password --> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql:///hibernate_54</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password">1234</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> <!-- 可選配置 //是否在控制臺顯示hibernate生成的sql hibernate.show_sql true //是否對顯示到控制臺的sql語句格式化 hibernate.format_sql true //自動建表 # create(測試時使用) : 自動建表,每次啟動hibernate的時候都會自動建表. # create-drop(測試時使用) : 自動建表,每次啟動hibernate的時候都會自動建表.釋放資源時會將所有表刪除. # update(常用) : 自動建表,有表就不會再創建,如果已經存在的表不完全匹配.會自動修改表結構. # validate : 校驗表結構.不會自動建表.每次hibernate啟動時都會檢查表結構是否正確. //不正確=>拋出異常. --> <property name="hibernate.show_sql">true</property> <property name="hibernate.format_sql">true</property> <property name="hibernate.hbm2ddl.auto">update</property> <!-- 指定數據庫隔離級別 ## specify a JDBC isolation level #hibernate.connection.isolation 4 mysql 默認級別是4 Oracle 默認級別是2 --> <property name="hibernate.connection.isolation">4</property> <!-- 配置session與當前線程綁定 --> <property name="hibernate.current_session_context_class">thread</property> <!-- 映射引入配置 resource屬性:填寫引入映射文件的路徑. 相對于src目錄下. --> <mapping resource="cn/itcast/domain/Customer.hbm.xml" /> </session-factory> </hibernate-configuration>
以上這篇hibernate框架環境搭建具體步驟(介紹)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持創新互聯。
網站題目:hibernate框架環境搭建具體步驟(介紹)
地址分享:http://vcdvsql.cn/article16/gjsjgg.html
成都網站建設公司_創新互聯,為您提供ChatGPT、企業網站制作、網站收錄、服務器托管、用戶體驗、網站營銷
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯