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

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

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

    laoding
    本來我以為,隱身了別人就找不到我,沒有用的,像我這樣拉風的男人,無論走到哪里,都像在黑暗中的螢火蟲一樣,那樣的鮮明,那樣的出眾。我那憂郁的眼神,稀疏的胡茬,那微微隆起的將軍肚和親切的笑容......都深深吸引了眾人......
    posts - 0,  comments - 37,  trackbacks - 0
            Hibernate 是一個開放源代碼的對象關系映射框架,它對 JDBC 進行了輕量級的對象封裝,使 Java 程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。它不僅提供了從 Java 類到數(shù)據(jù)表之間的映射,也提供了數(shù)據(jù)查詢和恢復機制。相對于使用 JDBC 和 SQL 來手工操作數(shù)據(jù)庫,Hibernate 可以大大減少操作數(shù)據(jù)庫的工作量。 另外 Hibernate 可以利用代理模式來簡化載入類的過程,這將大大減少利用 Hibernate QL 從數(shù)據(jù)庫提取數(shù)據(jù)的代碼的編寫量,從而節(jié)約開發(fā)時間和開發(fā)成本 Hibernate 可以和多種Web 服務器或者應用服務器良好集成,如今已經支持幾乎所有的流行的數(shù)據(jù)庫服務器。
    在mysql中新建數(shù)據(jù)好USER表,字段有3個,分別是id、username、password,貼上腳本僅供參考

        create table `ding`.`user`(
            `id` 
    int default '' not null,
           `username` varchar(
    30),
           `password` varchar(
    30),
            primary key (`id`)
        );

    切換到數(shù)據(jù)庫透視圖,新建一個mysql連接(這里就不再多說了)。

    新建一個web工程,然后右鍵選擇myeclipse,選擇add hibernate........ ,把hibernate的jar加入到工程中,選擇的時候注意jar包要放在lib中,可以檢查下,其中有一下會選擇剛新建的mysql連接,加完以后就會看到SRC下多了一個hibernate.cfg.xml文件,內容包含了配置的連接信息,如下:
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
              
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
              
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

    <!-- Generated by MyEclipse Hibernate Tools.                   -->
    <hibernate-configuration>

        
    <session-factory>
            
    <property name="connection.username">root</property>
            
    <property name="connection.url">
                jdbc:mysql:
    //localhost:3306/ding
            </property>
            
    <property name="dialect">
                org.hibernate.dialect.MySQLDialect
            
    </property>
            
    <property name="myeclipse.connection.profile">mysql</property>
            
    <property name="connection.password">ding</property>
            
    <property name="connection.driver_class">
                com.mysql.jdbc.Driver
            
    </property>

        
    </session-factory>

    </hibernate-configuration>

    切換到數(shù)據(jù)庫透視圖,啟動那個連接找到建的USER表,右鍵選擇Hibernate Reverse Engineering...,在彈出的框里面點擊 Java src folder 一行最右側的 Browser.. 按鈕來選擇源碼目錄,這里我選擇自己工程src 目錄,并把下面的 Java package 右側的輸入框中輸入自己想要的包名,我這里是test,接著選中下面的復選框,我選前面兩個:
    [x] Hibernate mapping file (*.hbm.xml) for each database table
    [x] Java Data Object (POJO <> DB Table)
    第2項下面的復選create abstract class我這里不選,點擊next,再在ID generator選擇increment(自增長),點完成。

    返回j2ee透視圖,會看到在test包下生成了User.java和User.hbm.xml文件,如下:
    public class User implements java.io.Serializable {

        
    private Integer id;

        
    private String username;

        
    private String password;


        
    public Integer getId() {
            
    return this.id;
        }

        
    public void setId(Integer id) {
            
    this.id = id;
        }

        
    public String getUsername() {
            
    return this.username;
        }

        
    public void setUsername(String username) {
            
    this.username = username;
        }

        
    public String getPassword() {
            
    return this.password;
        }

        
    public void setPassword(String password) {
            
    this.password = password;
        }

    }


    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <!-- 
        Mapping file autogenerated by MyEclipse Persistence Tools
    -->
    <hibernate-mapping>
        
    <class name="test.User" table="user">
            
    <id name="id" type="java.lang.Integer">
                
    <column name="id" />
                
    <generator class="increment" />
            
    </id>
            
    <property name="username" type="java.lang.String">
                
    <column name="username" length="30" />
            
    </property>
            
    <property name="password" type="java.lang.String">
                
    <column name="password" length="30" />
            
    </property>
        
    </class>
    </hibernate-mapping>

    同時在原先的hibernate.cfg.xml中加入了  <mapping resource="test/User.hbm.xml" />,最終的hibernate.cfg.xml文件如下:
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
              
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
              
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

    <!-- Generated by MyEclipse Hibernate Tools.                   -->
    <hibernate-configuration>

        
    <session-factory>
            
    <property name="connection.username">root</property>
            
    <property name="connection.url">
                jdbc:mysql:
    //localhost:3306/ding
            </property>
            
    <property name="dialect">
                org.hibernate.dialect.MySQLDialect
            
    </property>
            
    <property name="myeclipse.connection.profile">mysql</property>
            
    <property name="connection.password">ding</property>
            
    <property name="connection.driver_class">
                com.mysql.jdbc.Driver
            
    </property>
            
    <mapping resource="test/User.hbm.xml" />

        
    </session-factory>

    </hibernate-configuration>

    寫個Test測試類
    public class Test {

        
    /**  
         *   @Description 方法實現(xiàn)功能描述  
         *   
    @param args
         *   void
         *   
    @throws  拋出異常說明
         
    */
        
    public static void main(String[] args) {
            
            SessionFactory sf 
    = new Configuration().configure().buildSessionFactory();
          Session session 
    = sf.openSession();
          Transaction tx 
    = session.beginTransaction();
          User u 
    = new User();
          u.setUsername(
    "laoding");
          u.setPassword(
    "123");
          session.save(u);
          tx.commit();
          
          String hql 
    = "from User";
          Query query 
    = session.createQuery(hql);
          List list 
    = query.list();
          
    for(Iterator i = list.iterator();i.hasNext();){
              User user 
    = (User) i.next();
              System.out.println(
    "username==="+user.getUsername());
          }
        }

    }

    執(zhí)行這個類,看到后臺打印
    username===laoding

    去看看表里數(shù)據(jù)已經插入,完成。
    posted on 2008-12-11 19:23 老丁 閱讀(765) 評論(0)  編輯  收藏 所屬分類: hibernate

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


    網站導航:
     
    本博客主為學習和復習之用,無關其他,想罵人的繞道
    Email:dkm123456@126.com
    大家一起交流進步
    QQ:283582761


    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    留言簿(4)

    我參與的團隊

    文章分類(50)

    文章檔案(48)

    相冊

    朋友

    搜索

    •  

    積分與排名

    • 積分 - 96478
    • 排名 - 600

    最新評論

    主站蜘蛛池模板: 91精品啪在线观看国产线免费| 精品熟女少妇aⅴ免费久久 | 99久久精品日本一区二区免费 | 美女羞羞喷液视频免费| 日韩精品无码区免费专区| 亚洲欧洲日产专区| 4399好看日本在线电影免费| 亚洲乱码在线播放| 久久天天躁狠狠躁夜夜免费观看| 亚洲国产成人精品无码区在线网站| 最近2019年免费中文字幕高清| 亚洲综合视频在线观看| 精品香蕉在线观看免费| 亚洲午夜一区二区三区| 四虎www成人影院免费观看| 国产成人综合亚洲绿色| 亚洲午夜激情视频| 免费毛片在线看不用播放器| 久久久久亚洲av无码专区| 在线看片v免费观看视频777| 日韩亚洲人成网站| 亚洲中文字幕视频国产| 少妇太爽了在线观看免费视频| 亚洲国产视频网站| 又大又粗又爽a级毛片免费看| 国产无遮挡色视频免费观看性色| 亚洲精品乱码久久久久久中文字幕| 99在线视频免费| 亚洲国产精品无码中文lv| 国产午夜亚洲精品国产成人小说| 99re6在线精品视频免费播放 | 亚洲国产精品无码久久久不卡| 亚洲毛片免费视频| 国产精品亚洲综合网站| 国产亚洲无线码一区二区 | 亚洲国产一区二区三区| 免费视频成人片在线观看| 亚洲国产欧洲综合997久久| 久久亚洲av无码精品浪潮| 国产精品爱啪在线线免费观看| 免费亚洲视频在线观看|