81,092
社区成员
发帖
与我相关
我的任务
分享
<class name="entity.Bill" table="Bill">
<id name="id" column="oid">
<generator class="increment" />
</id>
<property name="tableNum" column="table_num" />
<property name="consumption" column="consumption" />
<property name="isFinished" column="is_finished" />
<property name="createDate" column="create_date" />
<set name="itemSet" cascade="all" lazy="false">
<key column="Bill_id" />
<one-to-many class="entity.Item" />
</set>
</class>
Dish dish1 = DishDAO.findDishByName("apple");
Bill bill = BillDAO.findBill("B");
Item item = ItemDAO.createItem(new Item(1,dish1));
bill.getItemSet().add(item);
public static Bill findBill(String tableNum) throws Exception {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction tx = session.beginTransaction();
Bill bill;
Query query = session.createQuery("from Bill bill where bill.tableNum=:tableNum and bill.isFinished=false");
query.setParameter("tableNum", tableNum);
List list = query.list();
Iterator iter = list.iterator();
if(iter.hasNext()) {
bill = (Bill) iter.next();
}else {
tx.commit();
session.close();
throw new Exception("bill not found");
}
tx.commit();
session.close();
return bill;
}
<filter>
<filter-name>OpenSessionInViewFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>OpenSessionInViewFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>