📄 authorizeservice.java
字号:
package org.whatisjava.dang.service;
import org.apache.log4j.Logger;
import org.whatisjava.dang.dao.DaoFactory;
import org.whatisjava.dang.dao.UserDao;
import org.whatisjava.dang.domain.User;
import org.whatisjava.dang.util.DaoException;
import org.whatisjava.dang.util.MD5Utils;
import org.whatisjava.dang.util.CodeUtils;
public class AuthorizeService {
private static Logger logger = Logger.getLogger(CatalogService.class);
private UserDao userDao = DaoFactory.getUserDao();
public User getUser(Integer id) throws DaoException {
return userDao.getUser(id);
}
/**
*
*
* @param email
* @param pwd
* @return
* @throws DaoException
*/
public User validateUser(String email, String pwd) throws DaoException {
User user = userDao.findUserByEmail(email);
if (user != null) {
if (MD5Utils.md5(pwd).equals(user.getPassword())) {
user.setPassword(null);
return user;
}
}
return null;
}
/**
*
* @param email
* @return
* @throws DaoException
*/
public boolean validateUserName(String email) throws DaoException {
User user = userDao.findUserByEmail(email);
if (user == null)
return true;
return false;
}
/**
*
* 判断指定id的用户是否已经通过email验证
*
* @param id
* @return
* @throws DaoException
*/
public boolean isVerifiedUser(Integer id) throws DaoException {
User user = userDao.getUser(id);
return user.getVerify();
}
/**
*
*
* @param id
* @param code
* @return
* @throws DaoException
*/
public User verifyEmail(Integer id, String code) throws DaoException {
User user = userDao.getUser(id);
String verifyCode = user.getVerifyCode();
logger.debug("verifyCode:" + verifyCode);
logger.debug("code:" + code);
if (code != null && code.equals(verifyCode)) {
user.setVerify(true);
userDao.updateUser(user);
return user;
}
return null;
}
/**
*
* @param user
* @return 用于激活用户的验证码
* @throws DaoException
*/
public String addUser(User user) throws DaoException {
// 密码加密
user.setPassword(MD5Utils.md5(user.getPassword()));
// 设置积分的初始值为0
user.setIntegral(0);
// 设置是否通过email验证为false
user.setVerify(false);
// 产生用于激活用户的验证码
String code = CodeUtils.nextCode();
user.setVerifyCode(code);
userDao.addUser(user);
return code;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -