-
組件屬性,實體類中的某個屬性屬于用戶自定義的類的對象。 <component name="address" class="Address"> <property name="postcode" column="POSTCODE"></property> <property name="phone" column="PHONE"></property> <property name="address" column="ADDRESS"></property> </component>查看全部
-
hibernate從數據庫中獲取圖片 student s = (Student)session.get(Student.class,1); Blob image = s.getPicture(); InputStream input = image.getBinaryStream(); File file = new File("d:"+File.separator+"dest.jpg"); OutputStream output = new FileOutputStream(); byte[] buff = new byte[input.available()]; input.read(buff); output.write(buff); input.close(); output.close();查看全部
-
...查看全部
-
session詳解查看全部
-
hibernate的執行流程查看全部
-
hibernate查看全部
-
Hibernate基本類型查看全部
-
hibernate.cfg.xml常用配置查看全部
-
junit測試標簽查看全部
-
寫原生SQL語句有什么不好?查看全部
-
單一主鍵: (1)assigned 由java應用程序負責生成(手工賦值) (2)native 由底層數據庫自動生成標示符,如果是MySQL就是increment,如果是Oracle就是sequence,等等 Ps1:assigned注意:如果實體類中設置的主鍵id是基本類型int的話,則可以不用賦值,系統默認值為0;如是引用類型Integer話,則默認值為null,不賦值系統則報錯。 Ps2:native注意:系統會自動選擇該數據庫對應的自動增值方式,從1開始。即使手動給他賦值,也不會起作用,但也不會報錯。查看全部
-
主鍵生成策略查看全部
-
1、Hibernate對數據的操作都是封裝在事務當中,并且默認是非自動提交的方式。所以用session保存對象時,如果不開啟事務,并且手工提交事務,對象并不會真正保存在數據庫中。 2、如果不開啟事務,并想讓Hibernate像jdbc那樣自動提交事務,必須調用session對象的doWork()方法,獲得jdbc的connection后,設置其為自動提交事務模式。(注意:通常并不推薦這樣做) Ps:記得在session.save();前操作doWork(new Work(){conn.setAutoCommit(true);});時,記得在session.save();后調用session.flush();查看全部
-
hibernate.cfg.xml常用配置 (1)hibernate.show_sql 編碼階段便于測試 (2)hibernate.format_sql 排版問題,建議設置為true (3)hbm2ddl.auto 可以幫助由 java代碼生成數據庫腳本,進而生成具體的表結構。create/update/create- drop/validatereate(重新改變結構,原來的所有記錄都不見了:先drop,再create)/update(檢查schema是否一致,如果不一致會做scheme更新)/create-drop(先create,在系統關閉前執行drop)/validate(驗證現有schema與你配置的hibernate是否一致,如果不一致就拋出異常,并不做更新) (4)hiberante.default_schema 默認的數據庫 (5)hibernate.dialect 配置Hibernate數據庫方言 hiberante的前綴可以省略,即:hibernate.dialect等同于dialect查看全部
-
<property name="show_sql">true</property> <property name="format_sql">true</property> <property name="hibernate.default_schema">hibernate</property>//設置前提在hbm.xml里沒有設置schema="dbo" catalog="hibernatedb";否則無效,hbm.xml設置會優先。 <property name="hbm2ddl.auto">create</property> 1、create:先刪除原有的表,然后重新生成。 2、update:不會刪除原有的表,在原有的基礎上繼續操作。 Ps:對于Oracle此為用戶名,不是表空間;對于MySql此為數據庫名:hibernate.default_schema=excavator查看全部
舉報
0/150
提交
取消