userinfodaohibernate.java
来自「这个是完整的wap项目的源码 开发语言 Java 系统架构 Struts +」· Java 代码 · 共 174 行
JAVA
174 行
package com.longtime.wap.module.user.dao.hibernate;
import java.sql.SQLException;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.LockMode;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import com.longtime.wap.common.BaseDao;
import com.longtime.wap.common.web.Page;
import com.longtime.wap.model.UserInfo;
import com.longtime.wap.module.user.common.UserInfoConstants;
import com.longtime.wap.module.user.dao.UserInfoDao;
/**
* UserInfoDao层代码实现类
*
* @author baolj
* @date Nov 15, 2007
*/
public class UserInfoDaoHibernate extends BaseDao implements UserInfoDao {
/**
* 新建用户信息
*
* @param userInfo
* 用户信息对象
*/
public void createUserInfo(UserInfo userInfo) {
this.getHibernateTemplate().save(userInfo);
}
/**
* 删除用户信息
*
* @param userInfoList
* 用户信息对象列表
*/
public void deleteUserInfosByIds(List userInfoList) {
this.getHibernateTemplate().deleteAll(userInfoList);
}
/**
* 获取用户信息
*
* @param id
* 用户编号
* @return 用户信息对象
*/
public UserInfo retrieveUserInfoById(final Long id) {
return (UserInfo) this.getHibernateTemplate().get(UserInfo.class, id);
}
/**
* 通过用户名获取用户信息
*
* @param userName
* 用户名
* @return 用户信息对象
*/
public UserInfo retrieveUserInfoByUsername(String userName) {
if (userName == null) {
return null;
}
String sql = "from UserInfo userInfo where userInfo.userName = '"
+ userName + "'";
List userInfos = this.getHibernateTemplate().find(sql);
if (userInfos == null || userInfos.size() == 0) {
return null;
}
return (UserInfo) userInfos.get(0);
}
/**
* 列表显示用户信息
*
* @param page
* 分页参数
* @return 用户信息列表
*/
public List retrieveUserInfos(final Page page) {
return this.getHibernateTemplate().executeFind(
new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
StringBuilder hql = new StringBuilder(
"from UserInfo userInfo where userInfo.groupId = ");
hql
.append(UserInfoConstants.USER
+ " order by userInfo.userId");
Query query = session.createQuery(hql.toString());
return query.setFirstResult(page.getFirstResult())
.setMaxResults(page.getPageSize()).list();
}
});
}
/**
* 获取用户信息列表
*
* @param ids
* 用户信息编号
* @return 用户信息列表
*/
public List retrieveUserInfosByIds(final String[] ids) {
return this.getHibernateTemplate().executeFind(
new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
StringBuilder hql = new StringBuilder(
"from UserInfo userInfo where ");
for (int i = 0; i < ids.length; i++) {
hql.append("userInfo.userId = " + ids[i]);
if (i != ids.length - 1) {
hql.append(" or ");
}
}
Query query = session.createQuery(hql.toString());
return query.list();
}
});
}
/**
* 统计用户信息数量
*
* @return 用户信息对象数量
*/
public int retrieveUserInfosCount() {
return (Integer) getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
StringBuilder hql = new StringBuilder(
"select count(*) from UserInfo userInfo "
+ "where userInfo.groupId = ");
hql.append(UserInfoConstants.USER);
Query query = session.createQuery(hql.toString());
return query.uniqueResult();
}
});
}
/**
* 更新用户信息对象
*
* @param userInfo
* 用户信息对象
*/
public void updateUserInfo(UserInfo userInfo) {
this.getHibernateTemplate().update(userInfo);
}
/**
* 判断用户信息是否存在
*
* @param id
* 用户编号
* @return 用户信息是否存在
*/
public boolean isUserInfoExisted(Long id) {
Object userInfo = this.getHibernateTemplate().get(UserInfo.class, id,
LockMode.NONE);
this.getHibernateTemplate().clear();
return userInfo == null ? false : true;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?