JavaWeb实现注册界面以及邮件的发送

本文介绍如何在JavaWeb应用中实现用户注册界面,并在用户注册后通过邮件发送激活信息。内容涵盖EasyUI表单设计、邮件发送、servlet处理用户参数、登录功能、Filter过滤器、验证码实现、在线用户统计及踢出已登录用户的相关技术。
摘要由CSDN通过智能技术生成

现在很多的网站都提供有用户注册功能,通常我们注册成功之后就会收到一封来自注册网站的邮件。邮件里面的内容可能包含了我们的注册的用户名和密码以及一个激活账户的超链接等信息。今天我们也来实现一个这样的功能,用户注册成功之后,就将用户的注册信息以Email的形式发送到用户的注册邮箱当中,实现发送邮件功能就得借助于JAVAMAIL了

JavaWeb注册界面

首先,注册界面是可以从easyui官网当中的form当中找到的,除了复制表单代码也不要忘记了复制它自带的css以及js代码哦!

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
      <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

	<c:if test="${param.msg!=null and param.msg=='pass'}">
		<script type="text/javascript">
			alert("密码错误!");
		</script>
	</c:if>
	<c:if test="${param.msg!=null and param.msg=='nouser'}">
		<script type="text/javascript">
			alert("账号不存在!");
		</script>
	</c:if>

    <form action="customer?action=login" method="post">
        <div>
            <h1>用户登录</h1>
        </div>
        <div>
            <input placeholder="请输入用户名/邮箱/手机号" id="cname" name="cname" value="${cname}" class="easyui-textbox" data-options="iconCls:'icon-users',iconWidth:30,iconAlign:'left',prompt:'用户名'" style="width:100%;height:35px;" />
        </div>
        <div>
            <input placeholder="请输入密码" id="pass" name="pass" type="password" value="${pass}" class="easyui-passwordbox" data-options="iconWidth:30,iconAlign:'left',prompt:'密码'" style="width:100%;height:35px;" />
        </div>
        <div>
            <input type="checkbox" labelWidth="70" name="remenber"  value="remenber"/>记住密码
        </div>
         <div style="float: right;position: relative;top:-25px;">
            <input type="checkbox" labelWidth="70" name="autoLogin" value="autoLogin" />自动登录
        </div>
        <div>
            <input class="easyui-linkbutton" type="submit" value="登录" style="width:100%;height:35px;" />
        </div>
        <div>
            <div style="display:inline;">
                <a href=" ">还未注册?</a >
            </div>
            <div style="display:inline;margin-left:170px;">
                <a href="javascript:void(0)">忘记密码?</a >
            </div>
        </div>
    </form>
</body>
</html>

实现邮件的发送功能

当用户完成注册时,会发送一个邮件到他注册输入的邮箱当中,点击此邮箱的激活码即可激活用户进行登录

package com.cssve.com.email;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Message.RecipientType;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class EmailUtils {
   
	
	/*
	 * 读取配置文件
	 * 	
	 * 		1,io【输入流】src目录下
	 * 		
	 * 
	 */
	//属性对象
	static Properties properties=new Properties();
	
	static{
   
		try {
   
			//加载配置文件信息
			InputStream in = EmailUtils.class.getClassLoader().getResourceAsStream("email.properties");
			
			
			//加载流中的数据
			properties.load(in);
		} catch (IOException e) {
   
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	
	
	/*
	 * 【通用】发送邮件
	 * 
	 * 	  参数:
	 * 		1,接受者
	 * 		2,主题
	 * 		3,内容
	 * 
	 * 	返回值类型
	 * 		boolean
	 */
	public static boolean sendEmail(String to,String subject,String content){
   
		try {
   
			Properties props=new Properties();
			props.setProperty("mail.host",properties.getProperty("host") );
			props.setProperty("mail.smtp.auth",properties.getProperty("auth") );
			props.setProperty("mail.transport.protocol",properties.getProperty("protocol") );
			
			Authenticator authenticator=new Authenticator() {
   
			
				@Override
				protected PasswordAuthentication getPasswordAuthentication() {
   	
					return new PasswordAuthentication(properties.getProperty("username"), properties.getProperty("password"));
				}
			};
			//获取连接
			Session session = Session.getInstance(props, authenticator);

			session.setDebug(true);
			//准备一封邮件、
			MimeMessage message=new MimeMessage(session);
			
			//设置发送者
			message.setFrom(new InternetAddress(properties.getProperty("username")));
		
//			设置接受者
			message.setRecipients
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值