📄 orderhibernatedao.java
字号:
/* * Created on Mar 5, 2004 * * (c) 2004, Mark Eagle, meagle@meagle.com * relased under terms of the GNU public license * http://www.gnu.org/licenses/licenses.html#TOCGPL */package com.meagle.service.dao.hibernate;import java.sql.SQLException;import java.util.List;import net.sf.hibernate.HibernateException;import net.sf.hibernate.Query;import net.sf.hibernate.Session;import org.springframework.orm.hibernate.HibernateCallback;import org.springframework.orm.hibernate.support.HibernateDaoSupport;import com.meagle.bo.Order;import com.meagle.service.dao.IOrderDAO;/** * @author MEagle * * The order service Hibernate implementation. This class is responsible * for data access logic functions */public class OrderHibernateDAO extends HibernateDaoSupport implements IOrderDAO { /** * Constructor for OrderHibernateDAO. */ public OrderHibernateDAO() { super(); } /** * Looks up an order by ID. * * @param id the ID for the order * @return Order */ public Order findOrderById(final int id) { Order order = (Order) getHibernateTemplate().load(Order.class, new Integer(id)); // force the collection of order line items to be initialized. This could // have automatically been done by setting lazy="false" in the Hibernate mappings if(order.getOrderLineItems().size() > 0){ // collection initialized. } return order; } /** * Looks up orders by the name the order was placed against * * @param placedBy the user who placed the order * @return List */ public List findOrdersPlaceByUser(final String placedBy) { return getHibernateTemplate().executeFind(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { StringBuffer sb = new StringBuffer(100); sb.append("select distinct order "); sb.append("from Order order "); sb.append("join order.lineItems lineItems "); sb.append("where order.placedBy = :placedBy"); sb.append("order by order.id"); Query query = session.createQuery(sb.toString()); query.setString("placedBy", placedBy); List list = query.list(); return list; } }); } /** * Saves an order object * * @param order */ public Order saveOrder(final Order order) { getHibernateTemplate().save(order); return order; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -