|
|
package cn.itbaizhan.dao.impl;
|
|
|
import java.util.List;
|
|
|
import javax.annotation.Resource;
|
|
|
import org.springframework.orm.hibernate3.HibernateTemplate;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
import cn.itbaizhan.dao.OrderFormDao;
|
|
|
import cn.itbaizhan.po.Commodity;
|
|
|
import cn.itbaizhan.po.OrderForm;
|
|
|
import cn.itbaizhan.po.User;
|
|
|
// 订单持久层实现类,使用Spring的HibernateTemplate进行数据库操作
|
|
|
@Component("orderFormDaoImpl")
|
|
|
public class OrderFormDaoImpl implements OrderFormDao {
|
|
|
// 使用spring对Hibernate的模版 HibernateTemplate
|
|
|
@Resource(name="hibernateTemplate")
|
|
|
private HibernateTemplate hibernateTemplate;
|
|
|
// 删除指定的订单
|
|
|
public void delete(OrderForm orderForm) {
|
|
|
// 删除指定的订单表单对象
|
|
|
hibernateTemplate.delete(orderForm);
|
|
|
}
|
|
|
// 获取所有订单列表
|
|
|
@SuppressWarnings("unchecked")
|
|
|
public List<OrderForm> findAllOrderForms() {
|
|
|
String hql = "from OrderForm";
|
|
|
return (List<OrderForm>)hibernateTemplate.find(hql);
|
|
|
}
|
|
|
// 根据ID查找订单
|
|
|
// 根据ID查找订单表单
|
|
|
public OrderForm findOrderFormById(int id) {
|
|
|
OrderForm orderForm = (OrderForm)hibernateTemplate.get(OrderForm.class, id);
|
|
|
return orderForm;
|
|
|
}
|
|
|
// 保存新的订单
|
|
|
// 保存订单表单的方法
|
|
|
public void save(OrderForm orderForm) {
|
|
|
System.out.println(orderForm); // 打印订单表单信息
|
|
|
hibernateTemplate.save(orderForm); // 使用 Hibernate 模板保存订单表单到数据库
|
|
|
}
|
|
|
// 更新指定的订单
|
|
|
/**
|
|
|
* 更新订单表单信息
|
|
|
* @param orderForm 需要更新的订单表单对象
|
|
|
*/
|
|
|
public void update(OrderForm orderForm) {
|
|
|
hibernateTemplate.update(orderForm);
|
|
|
}
|
|
|
// 获取HibernateTemplate对象
|
|
|
public HibernateTemplate getHibernateTmeplate() {
|
|
|
return hibernateTemplate;
|
|
|
}
|
|
|
// 设置HibernateTemplate对象
|
|
|
/**
|
|
|
* 设置 HibernateTemplate 实例的方法
|
|
|
*
|
|
|
* @param hibernateTemplate HibernateTemplate 实例
|
|
|
*/
|
|
|
public void setHibernateTmeplate(HibernateTemplate hibernateTemplate) {
|
|
|
this.hibernateTemplate = hibernateTemplate;
|
|
|
}
|
|
|
}
|
|
|
// 根据订单ID查询订单
|
|
|
// 根据订单表ID查询订单表信息
|
|
|
public OrderForm queryOrderForm(int orderFormId) {
|
|
|
// 根据 orderFormId 查询 OrderForm 对象
|
|
|
return (OrderForm)hibernateTemplate.getSessionFactory().openSession().createQuery(
|
|
|
"from OrderForm o where o.orderFormId=? ").setParameter(
|
|
|
0, orderFormId).uniqueResult();
|
|
|
}
|
|
|
// 根据用户名查找订单列表
|
|
|
@SuppressWarnings("unchecked")
|
|
|
// 根据用户名查找订单表单
|
|
|
public List<OrderForm> findOrderFormByUserName(String username) {
|
|
|
// 输出用户名到控制台
|
|
|
System.out.println("用户名:"+username);
|
|
|
// 定义HQL查询语句,用于查找指定用户名的订单表单
|
|
|
String hql = "from OrderForm o where o.username=?";
|
|
|
// 使用hibernateTemplate执行HQL查询,并返回结果列表
|
|
|
return (List<OrderForm>)hibernateTemplate.find(hql,username);
|
|
|
}
|
|
|
} |