日期:2014-05-18  浏览次数:20831 次

没人进,再发一边,分不够再给,(java 实现邮箱注册)
用javamail做了一个邮件系统,收发都实现了,怎么实现注册?(邮件服务器是CMailServer)

------解决方案--------------------
还是没人,自己在顶一下,
------解决方案--------------------
不会,帮顶
------解决方案--------------------
有没有做邮件系统的
------解决方案--------------------
帮顶~~不会
------解决方案--------------------
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;

/**
* 一个简单邮件发送类.
*/
public class Sender
{
/**
* Main 方法以发送在命令行给出的消息.
*/
public static void main(String args[])
{
try
{
String smtpServer = args[0];
String to = args[1];
String from = args[2];
String pwd = args[3];
String subject = args[4];
String body = args[5];
send(smtpServer,to,from,pwd,subject,body);
}
catch(Exception ex)
{
//java Sender mail.xxx.net YuLimin@xxx.net YuLimin@xxx.net password "Hello " "Just to say Hello. "
System.out.println( "Usage: java Sender " + " smtpServer toAddress fromAddress Password subjectText bodyText ");
}
System.exit(0);
}

/**
* "send " 方法发送消息.
*/
public static void send(String smtpServer,String to,String from,String pwd,String subject,String body)
{
try
{
Properties props = System.getProperties();
// -- 连接一个缺省会话,或新建一个 --
props.put( "mail.smtp.host ",smtpServer);
props.put( "mail.smtp.auth ", "true ");//同时通过验证
Session session = Session.getDefaultInstance(props,null);
session.setDebug(true);
// -- 创建一个新消息 --
MimeMessage msg = new MimeMessage(session);
// -- 设置 FROM 和 TO 域 --
msg.setFrom(new InternetAddress(from));
msg.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to,false));
// --我们也可以包含 CC 收件人 --
// if (cc != null)
// msg.setRecipients(Message.RecipientType.CC,InternetAddress.parse(cc, false));
// -- 设置 subject 和 body 文本 --
msg.setSubject(subject);
msg.setText(body);
// -- 设置其他一些标头信息--
msg.setHeader( "X-Mailer ", "JavaMail ");
msg.setSentDate(new Date());
// -- 发送消息 --
Transport transport=session.getTransport( "smtp ");
transport.connect(smtpServer,from,pwd);//以smtp方式登录邮箱
transport.sendMessage(msg,msg.getAllRecipients());//发送邮件,其中第二个参数是所有
transport.close();
System.out.println( "Message sent OK. ");
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}
------解决方案--------------------
记得下载JavaMail与JavaBeansActivation
------解决方案--------------------
这是以前YuLimin司令回的帖子.我收藏了.
------解决方案--------------------
既然邮件的收发都已经实现了。问题只是如何实现注册的思路罢了。

------解决方案--------------------
注册时,接收到用户提交的注册信息并验证无误后,产生一个随机码,法则自定,怎么都行,只要产生一串随机码就行,甚至和其它用户偶尔有重复也没关系。
然后将用户信息和这个随机码存入一个“待审核用户”表中,再把这个随机码通过邮件发送给用户填写的邮箱,并提供一个快捷链接指向填写注册验证随机码的页面。

------解决方案--------------------
用户到指定页面填写验证码并提交后,到“待审核用户”表去验证一下是否正确,是则将此用户信息存入“注册用户表”中,并从“待审核用户”表中删除。否则则提示填写错误。
------解决方案--------------------
但愿我没理解错吧,楼主所指“邮箱注册”不是指注册申请CMailServer邮箱帐号吧? 那个是可以直接通过CMailServer提供的页面里的“注册”链接进行的。