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

📄 userinfohibernatedao.java

📁 天乙社区6.0是一套基于JAVA技术的网络虚拟社区
💻 JAVA
字号:
package com.laoer.bbscs.dao.hibernate;

import org.springframework.orm.hibernate.support.HibernateDaoSupport;
import com.laoer.bbscs.dao.IUserInfoDAO;
import com.laoer.bbscs.bean.UserInfo;
import java.util.*;
import org.springframework.dao.*;
import com.laoer.bbscs.sys.Pages;
import com.laoer.bbscs.sys.PageList;
import net.sf.hibernate.Query;
import com.laoer.bbscs.sys.Constant;
import com.laoer.bbscs.sys.SysUtil;
import net.sf.hibernate.HibernateException;
import net.sf.hibernate.Session;
import org.springframework.orm.hibernate.HibernateCallback;
import java.sql.SQLException;

/**
 * <p>Title: TianYi BBS</p>
 * <p>Description: TianYi BBS System</p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: LAOER.COM/TIANYISOFT.NET</p>
 * @author laoer
 * @version 6.0
 */

public class UserInfoHibernateDAO
    extends HibernateDaoSupport implements IUserInfoDAO {

  private static final String LOAD_BY_USERNAME =
      "from UserInfo ui where ui.username = ?";
  private static final String LOAD_BY_EMAIL =
      "from UserInfo ui where ui.email = ?";
  private static final String LOAD_BY_PASSWD =
      "from UserInfo ui where ui.username = ? and ui.repasswd = ?";
  private static final String LOAD_ALL_COUNT =
      "select count(*) from UserInfo ui";

  public UserInfoHibernateDAO() {
    super();
  }

  /**
   *
   * @param userinfo UserInfo
   * @return UserInfo
   * @todo Implement this com.laoer.bbscs.dao.IUserInfoDAO method
   */
  public UserInfo saveUserInfo(UserInfo userinfo) {
    try {
      getHibernateTemplate().saveOrUpdate(userinfo);
      return userinfo;
    }
    catch (DataAccessException ex) {
      return null;
    }
  }

  public UserInfo findUserInfoById(Long id) {
    try {
      return (UserInfo) getHibernateTemplate().get(UserInfo.class, id);
    }
    catch (DataAccessException ex) {
      return null;
    }
  }

  /**
   *
   * @param username String
   * @return UserInfo
   * @todo Implement this com.laoer.bbscs.dao.IUserInfoDAO method
   */
  public UserInfo findUserInfoByUserName(String username) {
    List l = getHibernateTemplate().find(LOAD_BY_USERNAME, username);
    if (l.size() == 0) {
      return null;
    }
    else {
      return (UserInfo) l.get(0);
    }
  }

  /**
   *
   * @param email String
   * @return UserInfo
   * @todo Implement this com.laoer.bbscs.dao.IUserInfoDAO method
   */
  public UserInfo findUserInfoByEmail(String email) {
    List l = getHibernateTemplate().find(LOAD_BY_EMAIL, email);
    if (l.size() == 0) {
      return null;
    }
    else {
      return (UserInfo) l.get(0);
    }
  }

  /**
   *
   * @param username String
   * @param passwd String
   * @return UserInfo
   * @todo Implement this com.laoer.bbscs.dao.IUserInfoDAO method
   */
  public UserInfo findUserInfoByPasswd(String username, String passwd) {
    Object[] values = {username, passwd};
    List l = getHibernateTemplate().find(LOAD_BY_PASSWD, values);
    if (l.size() == 0) {
      return null;
    }
    else {
      return (UserInfo) l.get(0);
    }
  }

  public List findUserInfoList(final String orderby, final String ascordesc,
                               final int firstResult, final int maxResults) {
    return getHibernateTemplate().executeFind(new HibernateCallback() {
      public Object doInHibernate(Session s) throws HibernateException, SQLException {
        String q = "from UserInfo ui order by ui." + orderby + " " + ascordesc;
        Query query = s.createQuery(q);
        query.setFirstResult(firstResult);
        query.setMaxResults(maxResults);
        List list = query.list();
        return list;
      }
    });
  }

  public int getAllUserNum() {
    try {
      List l = getHibernateTemplate().find(LOAD_ALL_COUNT);
      if (!l.isEmpty()) {
        return ( (Integer) l.get(0)).intValue();
      }
      else {
        return 0;
      }
    }
    catch (DataAccessException ex) {
      logger.error(ex);
      return 0;
    }
  }

}

⌨️ 快捷键说明

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