⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 messageshibernatedao.java

📁 java开发的经典框架assh,做的一个系统!
💻 JAVA
字号:

package com.caolulu.assh.dao.hibernate;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.caolulu.assh.bean.Messages;
import com.caolulu.assh.dao.MessagesDAO;

public class MessagesHibernateDAO extends HibernateDaoSupport implements
        MessagesDAO {

  public Messages createObject(Messages messages) {

    this.getHibernateTemplate().saveOrUpdate(messages);
    return messages;
  }

  public Messages findObjectById(long id) {

    return (Messages) this.getHibernateTemplate().get(Messages.class,
            new Long(id));
  }

  public List findObjectByChangCiId(final long changCiId,
          final int firstResult, final int maxResult) {

    return getHibernateTemplate().executeFind(new HibernateCallback() {

      public Object doInHibernate(Session s) throws HibernateException {

        Query query = s
                .createQuery("from Messages where changCiId = ? ORDER BY createTime DESC ");
        query.setLong(0, changCiId);
        query.setFirstResult(firstResult);
        query.setMaxResults(maxResult);
        List list = query.list();
        return list;
      }
    });
  }

  public List findObjectByChangCiId(final long changCiId) {

    return getHibernateTemplate().executeFind(new HibernateCallback() {

      public Object doInHibernate(Session s) throws HibernateException {

        Query query = s
                .createQuery("from Messages where changCiId = ? ORDER BY createTime DESC ");
        query.setLong(0, changCiId);
        List list = query.list();
        return list;
      }
    });
  }

  public int getObjectByChangCiId(final long changCiId) {

    int count = 0;
    List list = getHibernateTemplate().executeFind(new HibernateCallback() {

      public Object doInHibernate(Session s) throws HibernateException {

        Criteria c = s.createCriteria(Messages.class);
        c.setProjection(Projections.projectionList()
                .add(Projections.rowCount()));
        c.add(Restrictions.eq("changCiId", new Long(changCiId)));
        return c.list();
      }
    });
    if (!list.isEmpty()) {
      Object obj = (Object) list.get(0);
      if (obj != null) {
        count = ((Integer) obj).intValue();
      }
    }
    return count;
  }

  public void removeObjectByChangCiId(final long changCiId) {

    // this.getHibernateTemplate().delete("from Messages as messages where
    // messages.changCiId="+changCiId);
    this.getHibernateTemplate().execute(new HibernateCallback() {

      public Object doInHibernate(Session session) throws HibernateException {

        Query query = session
                .createQuery("delete from Messages where changCiId = ?");
        query.setLong(0, changCiId);
        query.executeUpdate();
        return null;
      }
    }, true);
  }

  public void removeObjectById(long Id) {

    this.getHibernateTemplate().delete(this.findObjectById(Id));
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -