Hibernate笔记

                                                                 Hibernate笔记
    2009-12-16 19:17
   1.根据javabean的property建立配置文件Xxx.hbm.xml
    <hibernate-mapping>
           <class name="xxx" table="com_xxx">
                    <id name="id" column="id">//映射表的主键
                       <generator class="native">//根据配置的数据库方言自动选择最佳的标识符生成策略
                     </id>
                        <property name="date" type="timestamp" column="">
                        <property name="username">其中type属性可以没有 hibernate可以自动获取到

           </class>
    </hibernate-mapping>
 2.建立hibernate的配置文件hibernate.cfg.xml
      <property name="connection.driver_class">xxxxxx</property>
        <property name="connection.url">xxxxxxxx//localhost</property>
        <property name="connection.username">xxxxx</property>
        <property name="connection.password">xxxxx</property>   JDBC连接信息
          <property name="dialect">xxxx</property> 数据库方言   
          <mapping resource="xxx.hbm.xml"/>添加表的映射文件


                                          
3.建立一个辅助类启动和建立一个全局的SessionFactory工厂,并且把代码放到static代码块中只执行一次。
    static{

            SesssionFactory sessionFactory=Configuration.configure().buildSessionFactory();
              }
4.处理Session和Transaction
      Session session=sessionFactory.getCurrentSession();获得一个工作单元
        Transaction ts= session.bigintransaction();//开始事务
         List results=session.createQuery("from xxx").list();//获得查询结果
           session.update(XXX);
           session.save(XXX);
           session.delete(session.get("id"));
           session.get("id");
       ts.commit();
     session.close();
       return result;
5.数据关联(难点和重点)
        1.多对多的关系(many-to-many)这是一个xxx到yyy   就是把关联的字段放进一个新的关联表中

             ----- yyy.hbm.xml
            <set name="xxx" table="xxx_yyy">
                 <key column="yyy_id"/>yyy与xxx_yyy表的关联字段
                   <many-to-many column="xxx_id" class="xxx">
            </set>
         2.一对多的关系:(one-to-many)这是一个xxx一对多yyy   
                      <set name="yyy">
                           <key column="xxx_id"  ></key>
                            <one-to-many class="yyy的javabean"/>
                      </set> 
        3.多对一的关系:(many-to-one)xxx多对一yyy 
                       <many-to-one name="yyy" column="yyy_id"></many-to-one>
        4.一对一的关系:(one-to-one) xxx一对一yyy
                       <one-to-one name="yyy" constrained="true"></one-to-one>
                    
  

       

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值