您的位置:首页 > 其它

手机网上商城-项目经验总结(九)-邮箱激活注册

2017-10-07 20:49 555 查看
9.注册用户功能(实现电子邮箱激活)

public void register(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException,
IllegalAccessException, InvocationTargetException {
// 封装user对象
Map<String, String[]> properties = request.getParameterMap();
User user = new User();

// 自定义类型转换器
// 参数1:类型转换器
// 参数2:要转换至的类型
ConvertUtils.register(new Converter() {

@Override
// 参数一:要转换成的类型
// 参数二:要转换的对象
public Object convert(Class arg0, Object arg1) {
// TODO Auto-generated method stub
// 将字符串转data
System.out.println(arg0);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
return sdf.parse(arg1.toString());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}, Date.class);
// 封装属性
BeanUtils.populate(user, properties);
// 校验验证码
if (request.getParameter("code").equals(
request.getSession().getAttribute("sRand"))) {
boolean result = us.addUser(user);
// code与uid一致 方便验证
String emailMsg = "恭喜您注册成功,请点击下面的连接进行激活账户"
+ "<a href='http://localhost:8081/ShopStore/user?method=validate&&activeCode="
+ user.getCode() + "'>"
+ "http://localhost:8081/ShopStore/login.jsp</a>";

if (result) {
try {
MailUtils.sendMail(user.getEmail(), emailMsg);
response.sendRedirect("/ShopStore/registerSuccess.jsp");
} catch (Exception e) {
// 发送失败
response.sendRedirect("/ShopStore/registerFail.jsp");
}
} else {
response.getWriter()
.println(
"<script>confirm('注册失败');location.href='/ShopStore/register.jsp';</script>");
}
}else{
response.setContentType("text/html;charset=UTF-8");
response.getWriter()
.println(
"<script>alert('succes哈哈哈');location.href='/ShopStore/register.jsp';</script>");
}
}

// 激活
public void validate(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException,
IllegalAccessException, InvocationTargetException {
String activeCode = request.getParameter("activeCode");
// 激活码与uid一致
us.updateState(activeCode);
response.sendRedirect("/ShopStore/login.jsp");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: