📄 productdaohibernate.java
字号:
package com.relationinfo.dao.hibernate;import java.util.List;import com.relationinfo.model.Product;import com.relationinfo.dao.ProductDAO;import org.hibernate.HibernateException;import org.hibernate.Session;import org.hibernate.criterion.Example;import org.hibernate.criterion.MatchMode;import org.springframework.orm.ObjectRetrievalFailureException;import org.springframework.orm.hibernate3.HibernateCallback;public class ProductDAOHibernate extends BaseDAOHibernate implements ProductDAO { /** * @see com.relationinfo.dao.ProductDAO#getProducts(com.relationinfo.model.Product) */ public List getProducts(final Product product) { if (product == null) { return getHibernateTemplate().find("from Product"); } else { // filter on properties set in the product HibernateCallback callback = new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException { Example ex = Example.create(product).ignoreCase().enableLike(MatchMode.ANYWHERE); return session.createCriteria(Product.class).add(ex).list(); } }; return (List) getHibernateTemplate().execute(callback); } } /** * @see com.relationinfo.dao.ProductDAO#getProduct(String productid) */ public Product getProduct(final String productid) { Product product = (Product) getHibernateTemplate().get(Product.class, productid); if (product == null) { log.warn("uh oh, product with productid '" + productid + "' not found..."); throw new ObjectRetrievalFailureException(Product.class, productid); } return product; } /** * @see com.relationinfo.dao.ProductDAO#saveProduct(Product product) */ public void saveProduct(final Product product) { getHibernateTemplate().saveOrUpdate(product); } /** * @see com.relationinfo.dao.ProductDAO#removeProduct(String productid) */ public void removeProduct(final String productid) { getHibernateTemplate().delete(getProduct(productid)); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -