成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Hibernate Blob數據類型映射的一個例子

開發 后端
本文講的是Hibernate Blob數據類型映射的一個例子,通過例子來把握Hibernate Blob數據類型映射。文中給出了相應的代碼。

以下為Hibernate Blob數據類型映射的一個例子,通過例子來把握Hibernate Blob數據類型映射。

Hibernate Blob:Java 代碼:

  1. public class User  implements   
  2. Java.io.Serializable {         
  3.        // Fields             
  4.      private long id;      
  5.      private String name;      
  6.      private String email;      
  7.      private String addr;      
  8.      //定義Blob的pthto      
  9.      private Blob photo;   

Hibernate Blob:xml 代碼:

  1. <Hibernate-mapping>     
  2.     <class name="org.tie.User" table="user" catalog="tie">     
  3.         <id name="id" type="long">     
  4.             <column name="id" />     
  5.             <generator class="identity" />     
  6.         </id>     
  7.         <property name="name" type="string">     
  8.             <column name="name" length="45" not-null="true" />     
  9.         </property>     
  10.         <property name="email" type="string">     
  11.             <column name="email" length="45" />     
  12.         </property>     
  13.         <property name="addr" type="string">     
  14.             <column name="addr" length="45" />     
  15.         </property>     
  16.         <!-- 映射blob類型 -->     
  17.         <property name="photo" type="blob">     
  18.             <column name="photo" />     
  19.         </property>     
  20.     </class>     
  21. </Hibernate-mapping>  

兩個測試方法:

Java 代碼:

  1.     public void testCreate(){                  
  2.     User user = new User();      
  3.     user.setName("linweiyang");      
  4.     user.setAddr("beijing");      
  5.     user.setEmail("linweiyang@163.com");      
  6.     Blob photo = null;              
  7.     try {      
  8.         //將圖片讀進輸入流      
  9.         FileInputStream fis = new FileInputStream("c:\\a.jpg");      
  10.         //轉成Blob類型      
  11.         photo = Hibernate.createBlob(fis);                      
  12.     } catch (FileNotFoundException e) {      
  13.         e.printStackTrace();      
  14.     } catch (IOException e) {      
  15.         e.printStackTrace();      
  16.     }                      
  17.     user.setPhoto(photo);                 
  18.     Session session = factory.openSession();      
  19.     Transaction tr = session.beginTransaction();      
  20.     session.save(user);      
  21.     tr.commit();      
  22.     session.close();         
  23. }              
  24. public void testRerieve(){                  
  25.     Session session = factory.openSession();      
  26.     User user = (User)session.load(User.classnew Long(3));      
  27.     try {      
  28.         //從數據庫中要讀取出來      
  29.         InputStream is = user.getPhoto().getBinaryStream();      
  30.         //在把寫到一個圖片格式的文件里      
  31.         FileOutputStream fos = new FileOutputStream("c:\\linweihan.jpg");                  
  32.         byte[] buffer = new byte[1024];      
  33.         int len = 0;      
  34.         //從數據庫中讀取到指定的字節數組中      
  35.         while((len = is.read(buffer) )!= -1){      
  36.             //從指定的數組中讀取,然后輸出來,  
  37.            所以這里buffer好象是連接inputStream和outputStream的一個東西      
  38.             fos.write(buffer,0,len);      
  39.         }      
  40.     } catch (FileNotFoundException e) {      
  41.         e.printStackTrace();      
  42.     } catch (SQLException e) {      
  43.         e.printStackTrace();      
  44.     } catch (IOException  e){      
  45.         e.printStackTrace();      
  46.     }                 
  47.     session.close();      
  48. }    

這么理解輸入輸出流,讀入流自然要有讀入的源頭,輸出也要輸出到某個地方,輸出一般是先要輸讀入,這里連接輸入和輸出的是一個在內存中的字節數組buffer.這樣從數據庫中讀到這個數組里,輸出流在從這個數組中輸出到特定的文件格式里。以上便是Hibernate Blob數據類型映射的一個例子。

 

【編輯推薦】

  1. 初學者適用的Hibernate學習方法
  2. Hibernate實戰(第2版)讀書筆記
  3. Hibernate一對多關系的處理
  4. 十五道Hibernate面試題及答案
  5. Hibernate的性能優化
責任編輯:仲衡 來源: JavaEye技術博客
相關推薦

2009-06-11 14:48:48

jbpm工作流引擎jbpm例子

2024-01-25 11:41:00

Python開發前端

2023-03-14 08:02:14

靜態路由動態路由設備

2024-01-08 13:40:00

并發安全? 數量

2025-05-28 02:00:00

AI智能體文本

2021-04-20 11:40:47

指針類型CPU

2009-09-25 12:31:13

Hibernate映射

2023-11-06 13:55:59

聯合索引MySQ

2021-12-31 10:32:26

MySQL數據類型

2009-06-24 08:04:18

Hibernate基礎核心接口數據類型

2024-05-27 00:30:00

NumPyPython開源庫

2021-07-09 06:11:37

Java泛型Object類型

2009-08-26 15:53:42

C#數據訪問XML

2012-02-08 11:15:38

HibernateJava

2012-02-03 11:17:33

HibernateJava

2018-01-02 09:44:37

2009-10-13 14:33:00

2022-08-01 10:44:37

人工智能AI

2009-07-14 16:02:42

JDBC例子

2022-10-08 13:29:19

Pandasgroupby
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久午夜视频 | 日韩在线小视频 | 国产午夜精品视频 | 久久成人av| 久久久久久久久久久久一区二区 | 成人精品视频在线观看 | 亚洲国产成人av | 亚洲成人av在线播放 | 影视一区 | 一级片av | 久久国产精品网站 | 精品国产91乱码一区二区三区 | av网址在线 | 国产欧美精品 | 日韩成人免费中文字幕 | 欧美一区二区 | 久久激情视频 | 日韩精品视频网 | 九色一区| 国内精品久久久久久影视8 最新黄色在线观看 | 欧美视频 亚洲视频 | 一级国产精品一级国产精品片 | 麻豆changesxxx国产| 精品二区 | 日韩欧美精品一区 | 成人一区二区三区在线观看 | 久久综合狠狠综合久久综合88 | 午夜一区二区三区在线观看 | 91精品国产综合久久香蕉922 | 亚洲三区在线观看 | 日韩欧美国产精品一区二区三区 | 男人的天堂久久 | 国产精品揄拍一区二区久久国内亚洲精 | 免费欧美视频 | 亚洲国产18 | 国产精品99视频 | 成人美女免费网站视频 | 精品福利在线 | 成人福利在线观看 | 久久亚洲二区 | 国产精品久久久久一区二区三区 |