java邮箱验证测试类的实现

最近公司开始做新项目了,刚好有做这个邮箱验证功能,不多说,直接上代码:

public static final String SMTPSERVER = “smtp.163.com”;//邮箱服务器地址(用QQ还是网易看需求,我这里用的是网易邮箱) public static final String SMTPPORT = “465”; //邮箱服务器默认端口 public static final String ACCOUT = “hgzlgl2017@163.com”;//邮箱帐号 public static final String PWD = “******”;//这是授权码,并不是邮箱的登录密码

首先是定义几个重要的变量,其中第一第二个都是官方指定的,一般不能改变,值得注意的是最后一个PWD变量指的是授权码,并不是邮箱的登录密码,也就是你在开通这个smtp服务的时候设置的,至于如何开启这个smtp服务,大家百度一下就行了,很简单的。我刚开始就是把这个授权码写成了邮箱的登录密码,一直连不上,搞了我很久才明白的,希望大家不要步我的后尘。然后:

public static void main(String[] args) throws Exception { // 创建邮件配置 Properties props = new Properties(); props.setProperty(“mail.transport.protocol”, “smtp”); // 使用的协议(JavaMail规范要求) props.setProperty(“mail.smtp.host”, SMTPSERVER); // 发件人的邮箱的 SMTP 服务器地址 props.setProperty(“mail.smtp.port”, SMTPPORT); props.put(“mail.smtp.socketFactory.class”, “javax.net.ssl.SSLSocketFactory”); props.setProperty(“mail.smtp.auth”, “true”); // 需要请求认证 props.setProperty(“mail.smtp.ssl.enable”, “true”);// 开启ssl // 根据邮件配置创建会话,注意session别导错包 Session session = Session.getDefaultInstance(props); // 开启debug模式,可以看到更多详细的输入日志 session.setDebug(true); //创建邮件 MimeMessage message = createEmail(session); //获取传输通道 Transport transport = session.getTransport(); transport.connect(SMTPSERVER,ACCOUT, PWD); //连接,并发送邮件 transport.sendMessage(message, message.getAllRecipients()); transport.close(); }

这里需要注意的主要是邮件的配置,其他的照搬代码就可以了,最后:

public static MimeMessage createEmail(Session session) throws Exception { // 根据会话创建邮件 MimeMessage msg = new MimeMessage(session); // address邮件地址, personal邮件昵称, charset编码方式 InternetAddress fromAddress = new InternetAddress(ACCOUT, “广西宏桂资产租赁有限公司”, “utf-8”); // 设置发送邮件方 msg.setFrom(fromAddress); InternetAddress receiveAddress = new InternetAddress( “3386173538@qq.com”, “邮箱验证”, “utf-8”); // 设置邮件接收方 msg.setRecipient(RecipientType.TO, receiveAddress); // 设置邮件标题 msg.setSubject(“邮箱验证”, “utf-8″); //msg.setContent(m,”text/html;charset=gb2312”); msg.setText(“我是个程序员,一天我坐在路边一边喝水一边苦苦检查程序。 这时一个乞丐在我边上坐下了,开始要饭,我觉得可怜,就给了他1块钱。 然后接着调试程序。他可能生意不好,就无聊的看看我在干什么,然后过了一会,他缓缓地指着我的屏幕说,这里少了个分号”); // 设置显示的发件时间 msg.setSentDate(new Date()); // 保存设置 msg.saveChanges(); return msg; }

这个方法是用来创建邮箱的。我之前做的时候遇到了三个问题,一个是我注册的邮箱的smtp服务没有开启,别一个就是授权码弄错了,还有一个就是我用的是Myeclipse8.5开发工具,这个工具不支持javaee6,而这个邮箱验证功能需要用到的是javaee6,所以我用的javaee5就报了异常,于是我把javaee5移除remove掉,自己在工程下创建一个文件夹,然后把javaee6这里面的jar包全复制进去,然后再添加到路径,这样就可以了。

 

如果,你对上面的内容还有疑问,推荐选择西部数码企业云邮箱!有专人协助您解答邮箱疑问。
西部数码企业云邮箱,采用分布式集群架构,数据多份写入,规避单点故障,全球智能中继,更安全稳定。企业邮箱无限空间,极速收发,99.9%精准过滤垃圾邮件,支持层级子文件夹,邮件撤回,日程微信通知、邮件监管、自定义工作报告功能、邮件归档、SSL部署等几十项功能。而且价格实惠,还可以免费试用!

企业邮箱免费试用入口:https://www.west.cn/services/mail/

赞(2)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » java邮箱验证测试类的实现

登录

找回密码

注册