📄 userdaoimpl.java
字号:
package com.cownew.phoneshow.basedata.user;
import java.util.List;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
public class UserDAOImpl extends HibernateDaoSupport implements IUserDAO
{
public void createNew(UserInfo value)
{
// 判断用户名是否为空
if (StringUtils.isEmpty(value.getUserId()))
{
throw new UserException(UserException.USERIDEMPTY);
}
// 判断用户是否存在,如果存在则抛出异常
if (userIdExists(value.getUserId()))
{
throw new UserException(UserException.USERTEXISTS);
}
getHibernateTemplate().save(value);
}
public void changePassword(String userId, String oldPassword,
String password)
{
// 不能使用load,因为load假定有这个对象
UserInfo user = (UserInfo) getHibernateTemplate().get(UserInfo.class,
userId);
if (user == null)
{
throw new UserException(UserException.USERNOTEXISTS,
new String[] { userId });
}
// 计算用户输入的密码的散列值是否和数据库中存储的一致
if (!DigestUtils.md5Hex(oldPassword).equals(user.getPassword()))
{
throw new UserException(UserException.OLDPASSWORDERROR);
}
// 计算新密码的散列值
String newMd5 = DigestUtils.md5Hex(password);
user.setPassword(newMd5);
getHibernateTemplate().update(user);
}
public boolean isCorrect(String userId, String password)
{
List list = getHibernateTemplate().find(
"from UserInfo user where user.userId=?", userId);
// 如果指定用户名的用户不存在则抛出异常
if (list.size() <= 0)
{
throw new UserException(UserException.USERNOTEXISTS,
new String[] { userId });
}
UserInfo user = (UserInfo) list.get(0);
// 校验散列值是否正确
if (!DigestUtils.md5Hex(password).equals(user.getPassword()))
{
return false;
}
return true;
}
public boolean userIdExists(String userId)
{
List list = getHibernateTemplate().find(
"from UserInfo user where user.userId=?", userId);
return list.size() > 0;
}
public UserInfo loadById(String id)
{
return (UserInfo) getHibernateTemplate().load(UserInfo.class, id);
}
public UserInfo loadByUserId(String userId)
{
List list = getHibernateTemplate().find(
"from UserInfo user where user.userId=?", userId);
return (UserInfo) list.get(0);
}
public void updateWallpaper(String userId, String wallpaper)
{
UserInfo user = loadByUserId(userId);
user.setWallpaper(wallpaper);
getHibernateTemplate().update(user);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -