adimpl.java
来自「社区文章采用的是平板、树形自由选择的两种展示方式」· Java 代码 · 共 109 行
JAVA
109 行
/*
* Created on 2006-3-4
* Last modified on 2007-12-20
* Powered by YeQiangWei.com
*/
package com.yeqiangwei.club.dao.hibernate.impl;
import java.util.List;
import com.yeqiangwei.club.dao.AdDAO;
import com.yeqiangwei.club.dao.hibernate.support.HibernateFacade;
import com.yeqiangwei.club.dao.hibernate.support.HibernateProvider;
import com.yeqiangwei.club.model.Ad;
import com.yeqiangwei.club.param.AdParameter;
public class AdImpl implements AdDAO {
private static final String FIND_ADID = "from Ad where adId=?";
private static final String DELETE_ADID = "delete from Ad where adId=?";
private static final String DELETES_ADID = "delete from Ad where adId in (:ids)";
private static final String FIND_ALL = "from Ad order by area";
private static final String COUNT_ALL = "select count(adId) from Ad";
private static final String FIND_FORUMID_AREA = "from Ad where forumId=? and area=? order by adId";
public void create(Ad item){
HibernateProvider<Ad> facade = new HibernateFacade<Ad>();
facade.save(item);
}
public void update(Ad item){
HibernateProvider<Ad> facade = new HibernateFacade<Ad>();
facade.update(item);
}
public int delete(Ad item) {
HibernateProvider<Ad> facade = new HibernateFacade<Ad>();
facade.createQuery(DELETE_ADID);
facade.setInt(0, item.getAdId());
return facade.executeUpdate();
}
public int delete(List<Integer> ids) {
HibernateProvider<Ad> facade = new HibernateFacade<Ad>();
facade.createQuery(DELETES_ADID);
facade.setParameterList("ids", ids);
return facade.executeUpdate();
}
public Ad findById(int id) {
HibernateFacade<Ad> facade = new HibernateFacade<Ad>(FIND_ADID);
facade.setInt(0, id);
facade.setCacheable(true);
facade.setMaxResults(1);
return facade.uniqueResult();
}
public List<Ad> findAll(AdParameter param) {
HibernateProvider<Ad> facade = new HibernateFacade<Ad>();
facade.createQuery(FIND_ALL);
facade.setFirstResult(param.getPagination().getStartRow());
facade.setMaxResults(param.getPagination().getEndRow());
return facade.executeQuery();
}
public long countAll(AdParameter param) {
HibernateProvider<Ad> facade = new HibernateFacade<Ad>();
facade.createQuery(COUNT_ALL);
return facade.resultTotal();
}
public List<Ad> findByParameter(AdParameter param) {
StringBuffer hql = new StringBuffer();
hql.append("from Ad ");
if(param.getArea()!=null){
hql.append(" where area=");
hql.append(param.getArea().byteValue());
}
hql.append(" order by area, forumId");
HibernateProvider<Ad> facade = new HibernateFacade<Ad>();
facade.createQuery(hql);
facade.setFirstResult(param.getPagination().getStartRow());
facade.setMaxResults(param.getPagination().getEndRow());
return facade.executeQuery();
}
public long countByParameter(AdParameter param) {
StringBuffer hql = new StringBuffer();
hql.append("select count(adId) from Ad");
HibernateProvider<Ad> facade = new HibernateFacade<Ad>();
facade.createQuery(hql);
return facade.resultTotal();
}
public Ad findByForumIdAndArea(int forumId, byte area) {
HibernateFacade<Ad> facade = new HibernateFacade<Ad>(FIND_FORUMID_AREA);
facade.setInt(0, forumId);
facade.setByte(1, area);
facade.setMaxResults(1);
return facade.uniqueResult();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?