<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 66,comments - 41,trackbacks - 0
       今天終于搞了個簡單的Hibernate的入門,這個Hibernate使用過程大概如下,DB建表->JavaBean->創建映射文件->Hibernate配置文件->編寫代碼。
    建表和JavaBean就不說了,還是說說配置文件吧,下面是一個映射文件的標準配置文件(Standard.hbm.xml):

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 
     3 <!-- 
     4     所有的XML映射文件都需要定義如下所示的DOCTYPE。
     5     Hibernate會先在它的類路徑(classpath)中搜索DTD文件
     6 -->
     7 <!DOCTYPE hibernate-mapping PUBLIC
     8      "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
     9         "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    10 
    11 <!-- 
    12     hibernate-mapping有如下可選屬性:
    13     1.Schema 屬性指明了這個映射的表所在的schema名稱
    14     2.default-cascade屬性指定了默認的級聯風格 可取值有none、save、update
    15     3.auto-import屬性默認讓我們在查詢語言中可以使用非全限定的類名 可取值有true、false.
    16     4.package屬性指定一個包前綴。
    17 -->
    18 
    19 <hibernate-mapping schema="schemaName" default-cascade="none"
    20     auto-import="true" package="packageName">
    21 
    22     <!-- 用class元素來定義一個持久化類 -->
    23     <class name="People" table="person">
    24         <!-- id元素定義了屬性到數據庫表主鍵字段的映射 -->
    25         <id name="id">
    26             <!-- 用來為持久化類的實例生成唯一的標識 -->
    27             <generator class="navive" />
    28         </id>
    29 
    30         <!-- discriminator識別器 是一種定義繼承關系的映射方法 -->
    31         <discriminator column="subclass" type="character" />
    32 
    33         <!-- property 元素為類聲明了一個持久化的、JavaBean風格的屬性-->
    34         <property name="name" type="String">
    35             <column name="name" length="64" not-null="true" />
    36         </property>
    37 
    38         <property name="sex" not-null="true" update="false" />
    39 
    40         <!-- 多對一映射關系 -->
    41         <many-to-one name="friend" column="friend_id" update="false" />
    42 
    43         <!-- 設置關聯關系 -->
    44         <set name="friends" inverse="true" order-by="id">
    45             <key column="friend_id" />
    46             <!-- 一對多映射 -->
    47             <one-to-many class="Cat" />
    48         </set>
    49 
    50     </class>
    51 
    52 </hibernate-mapping>
    53 

          Hibernate的配置文件分為兩種:一種為hibernate.cfg.xml,還有一種為hibernate.properties文件,下面分別給出標準配置
    hibernate.cfg.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE hibernate-configuration PUBLIC 
               "http://Hibernate/Hibernate Configuration DTD 3.0//EN" 
               "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
    >

    <hibernate-configuration>
        
    <session-factory>

            
    <!-- 顯示執行的SQL語句 -->
            
    <property name="show_sql">true</property>

            
    <!-- 連接字符串 -->
            
    <property name="connection.url">
                jdbc:mysql://localhost3306/stu
            
    </property>

            
    <!-- 數據庫用戶名 -->
            
    <property name="connection.username">root</property>

            
    <!-- 數據庫用戶密碼 -->
            
    <property name="connection.password">password</property>

            
    <!-- 數據庫驅動-->
            
    <property name="connection.driver_class">
                com.mysql.jdbc.Driver
            
    </property>

            
    <!-- 選擇使用的方言 -->
            
    <property name="dialect">
                org.hibernate.dialect.MySQLDialect
            
    </property>

            
    <!-- 映射文件 -->
            
    <mapping resource="com/stuman/domain/Admin.hbm.xml" />

            
    <mapping resource="com/stuman/domain/Student.hbm.xml" />

        
    </session-factory>
    </hibernate-configuration>

    hibernate.properties:
    #指定數據庫使用的驅動類
    hibernate.connection.driver_class=com.mysql.jbc.Driver r

    #指定數據庫連接串
    hibernate.connection.url=jdbc:mysql://localhost:3306/db

    #指定數據庫連接的用戶名
    hibernate.connection.username=username

    #指定數據庫連接的密碼
    hibernate.connection.password=password

    #指定數據庫使用的方言
    hibernate.dialect=net.sf.hibernate.dialect.MySQLDialect

    #指定是否打印SQL語句
    hibernate.show_sql=true/false

    下面是一個測試類,HOHO
     1 package Hibernate;
     2 
     3 import org.hibernate.*;
     4 import org.hibernate.cfg.*;
     5 
     6 public class Test {
     7     public static void main(String args[]) {
     8        try {
     9            //常見session工廠
    10            SessionFactory sf=new Configuration().configure().buildSessionFactory();
    11            //獲取session實例
    12            Session session=sf.openSession();
    13            //開始事務
    14            Transaction tx=session.beginTransaction();
    15            //創建一個User對象
    16            User user=new User();
    17            //為對象賦值
    18            user.setUsername("Hibernate");
    19            user.setPassword("123");
    20            //調用save()方法保存user實例到DB
    21            session.save(user);
    22            tx.commit();
    23            //關閉Session
    24            session.close();
    25        }catch (HibernateException e) {
    26            e.printStackTrace();
    27        }
    28    }
    29 }
    30 




    MSN:
    posted on 2007-12-17 21:20 kylixlu 閱讀(166) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲人成小说网站色| 亚洲精品国产成人片| 97se亚洲国产综合自在线| 在线观看永久免费| 亚洲色偷偷偷网站色偷一区| 毛片免费在线观看| 中文字幕亚洲精品| 亚洲精品免费在线| 国产人成亚洲第一网站在线播放| 成人女人A级毛片免费软件| 亚洲av午夜精品无码专区| 免费A级毛片无码免费视| 亚洲午夜无码毛片av久久京东热| 欧美最猛性xxxxx免费| 亚洲a∨国产av综合av下载| 免费看国产一级片| 中文成人久久久久影院免费观看| 亚洲成A人片在线观看WWW| 三年片在线观看免费观看大全动漫| 久久亚洲精品无码aⅴ大香 | 天黑黑影院在线观看视频高清免费 | 无码精品人妻一区二区三区免费看| 亚洲综合在线观看视频| 美女网站免费福利视频| 国产成人高清亚洲一区久久| 国产成人精品久久亚洲| 久99久精品免费视频热77| 77777亚洲午夜久久多喷| 亚洲国模精品一区| 免费人成在线观看网站品爱网 | 亚洲午夜爱爱香蕉片| 亚洲成人免费在线| 亚洲成aⅴ人片久青草影院按摩| 亚洲精品成人在线| 亚洲成年人免费网站| 亚洲AV成人无码久久WWW| 亚洲日韩精品无码一区二区三区| 免费观看激色视频网站(性色)| 爱情岛论坛亚洲品质自拍视频网站| 亚洲伊人成无码综合网| 国产在线观看片a免费观看|