Java实现通过smtp服务器验证邮箱的真实有效性

要用到commons-net-3.3.jar、dnsjava-2.1.7.jar包

大部分的国内常见邮箱都能准确验证。

验证频率和数量多的话容易被封掉ip


package com.tieniu;
import java.io.IOException;

import org.apache.commons.net.smtp.SMTPClient;
import org.apache.commons.net.smtp.SMTPReply;
import org.xbill.DNS.Lookup;
import org.xbill.DNS.MXRecord;
import org.xbill.DNS.Record;
import org.xbill.DNS.Type;

public class CheckEmail {
	
	public static final String SENDER_EMAIL = "no-reply@domain.com";//"no-reply@domain.com";
	public static final String SENDER_EMAIL_SERVER = SENDER_EMAIL.split("@")[1];//"domain.com";
	
	
	/**
	 * 
	 * @param email  The recipient's email address, it need to be validate if it is real exists or doesn't exists.
	 * @return True if email is real exists, false if not.
	 */
	public boolean checkEmailMethod(String email) {
		if (!email.matches("[\\w\\.\\-]+@([\\w\\-]+\\.)+[\\w\\-]+")) {
			System.err.println("Format error");
			return false;
		}

		String log = "";
		String host = "";
		String hostName = email.split("
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值