【原创】Hibernateonetomany

数据库两个表order,customer

     create table `test`.`customer`(
        `cid` int not null auto_increment comment 'auto_increment',
       `cname` varchar(20),
        primary key (`cid`)
    );

    create unique index `PRIMARY` on `test`.`customer`(`cid`);

    create table `test`.`order`(
        `oid` int not null auto_increment comment 'auto_increment',
       `odis` varchar(500),
       `cid` int,
        primary key (`oid`)
    );

    create unique index `PRIMARY` on `test`.`order`(`oid`);


 

index.jsp

  <body>
    <a href="servlet/addOrders">add orders</a>
  </body>


 

addOrders.java

 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  Customer customer=new Customer();
  customer.setCname("rockie");
  CDAO cdao=new CDAO();
  cdao.save(customer);
  Order order1=new Order();
  Order order2=new Order();
  Order order3=new Order();
  order1.setCustomer(customer);
  order2.setCustomer(customer);
  order3.setCustomer(customer);
  order1.setOdis("aaaa");
  order2.setOdis("bbbb");
  order3.setOdis("cccc");
  ODAO odao=new ODAO();
  odao.save(order1);
  odao.save(order2);
  odao.save(order3);  
 }


 

Customer.java

package org.rockie;

import java.util.HashSet;
import java.util.Set;

 

/**
 * Customer generated by MyEclipse - Hibernate Tools
 */

public class Customer  implements java.io.Serializable {


    // Fields   

     private Integer cid;
     private String cname;
     private Set orders=new HashSet();


    // Constructors

    public Set getOrders() {
  return orders;
 }


 public void setOrders(Set orders) {
  this.orders = orders;
 }


 /** default constructor */
    public Customer() {
    }

   
    /** full constructor */
    public Customer(String cname) {
        this.cname = cname;
    }

  
    // Property accessors

    public Integer getCid() {
        return this.cid;
    }
   
    public void setCid(Integer cid) {
        this.cid = cid;
    }

    public String getCname() {
        return this.cname;
    }
   
    public void setCname(String cname) {
        this.cname = cname;
    }
  }


 

Order.java

package org.rockie;

 

/**
 * Order generated by MyEclipse - Hibernate Tools
 */

public class Order  implements java.io.Serializable {


    // Fields   

     private Integer oid;
     private String odis;
     private Customer customer;


    // Constructors

    public Customer getCustomer() {
  return customer;
 }


 public void setCustomer(Customer customer) {
  this.customer = customer;
 }


 /** default constructor */
    public Order() {
    }

   
    /** full constructor */
    public Order(String odis, Integer cid) {
        this.odis = odis;
    }

  
    // Property accessors

    public Integer getOid() {
        return this.oid;
    }
   
    public void setOid(Integer oid) {
        this.oid = oid;
    }

    public String getOdis() {
        return this.odis;
    }
   
    public void setOdis(String odis) {
        this.odis = odis;
    }
}


 

Order.hbm.xml

<?xml version="1.0"?>
<!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 - Hibernate Tools
-->
<hibernate-mapping>
    <class name="org.rockie.Order" table="order" catalog="test">
        <id name="oid" type="java.lang.Integer">
            <column name="oid" />
            <generator class="native" />
        </id>
        <property name="odis" type="java.lang.String">
            <column name="odis" length="500" />
        </property>
        <many-to-one name="customer" class="org.rockie.Customer" column="cid"></many-to-one>
    </class>
</hibernate-mapping>


 

Customer.hbm.xml

<?xml version="1.0"?>
<!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 - Hibernate Tools
-->
<hibernate-mapping>
    <class name="org.rockie.Customer" table="customer" catalog="test">
        <id name="cid" type="java.lang.Integer">
            <column name="cid" />
            <generator class="native" />
        </id>
        <property name="cname" type="java.lang.String">
            <column name="cname" length="20" />
        </property>
  <set name="orders" cascade="all" table="order" inverse="true">
   <key column="cid"></key>
   <one-to-many class="org.rockie.Order"/>
  </set>

    </class>
</hibernate-mapping>


 

CDAO.java

package org.rockie;

import org.hibernate.Session;
import org.hibernate.Transaction;

public class CDAO {
 public void save(Customer customer)
 {
  Session session=HibernateSessionFactory.getSession();
  Transaction tx=session.beginTransaction();
   session.save(customer);
  tx.commit();
 }

}

 


 

ODAO.java

package org.rockie;

import org.hibernate.Session;
import org.hibernate.Transaction;

public class ODAO {
 public void save(Order order)
 {
  Session session=HibernateSessionFactory.getSession();
  Transaction tx=session.beginTransaction();
   session.save(order);
  tx.commit();
 } 

}

ps:此帖绝对是本人原创...

转载时..
请注明:
转至http://blog.csdn.net/Kipen/   作者:rockie(石の頭丶)
请尊重他人的劳动果实..
谢谢..

 --by rockie(石の頭丶)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值