📄 orderhibernatedao.java.svn-base
字号:
package com.pure.dao.hibernate;
import java.sql.SQLException;
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate3.HibernateCallback;
import com.pure.dao.OrderDAO;
import com.pure.domain.Member;
import com.pure.domain.Order;
import com.pure.page.Page;
/**
* 订单DAO接口实现类
*
* @author pure
*
*/
public class OrderHibernateDAO extends BaseDao implements OrderDAO {
protected final Log logger = LogFactory.getLog(getClass());
public void insertOrder(Order order) throws DataAccessException {
this.getHibernateTemplate().save(order);
}
public List getOrderList(final Page page) {
return getHibernateTemplate().executeFind(new HibernateCallback() {
public Object doInHibernate(Session s) throws HibernateException,
SQLException {
Query query = s.createQuery(page.getHql());
query.setFirstResult(page.getStartRs());
query.setMaxResults(page.getPerPage());
List list = query.list();
return list;
}
});
}
public Order getOrder(final int id) {
List dataList = this.getHibernateTemplate().find(
"from Order where id = ?", new Long(id));
if (dataList.size() == 0) {
return null;
} else {
return (Order) dataList.get(0);
}
}
public void delOrder(final int id) {
getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session s) throws HibernateException,
SQLException {
// TODO: 需要手动设置line_items表的级联删除
Query query = s.createQuery("delete from Order where id=:id");
query.setInteger("id", id);
query.executeUpdate();
return null;
}
});
}
public void settingOrder(final int id) {
getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session s) throws HibernateException,
SQLException {
Query query = s
.createQuery("update from Order set state='Y' where id=:id");
query.setInteger("id", id);
query.executeUpdate();
return null;
}
});
}
public Order getOrderByMember(int id, Member member) {
List dataList = this.getHibernateTemplate().find(
"from Order where id = ? and member_id=? ",
new Object[] { new Long(id), member.getId() });
if (dataList.size() == 0) {
return null;
} else {
return (Order) dataList.get(0);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -