Java使用qq邮箱发送邮件

代码背景:在注册一些账号是往往需要使用填写邮箱来获取激活码来激活账号。

需要得到jar:main.jar

具体代码如下:

/*
     * 发送邮件的方法
     * tjbjxlkkbmbqbefi
     */
    public static void sendMail(String to,String code) throws Exception {
        //获得session对象
        final Properties props = new Properties();

        //下面两段代码是设置ssl和端口,不设置发送不出去。
        props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
        props.setProperty("mail.smtp.socketFactory.port", "465");
        // 发送服务器需要身份验证
        props.setProperty("mail.transport.protocol", "smtp");// 发送邮件协议名称
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.host", "smtp.qq.com");//QQ邮箱的服务器 如果是企业邮箱或者其他邮箱得更换该服务器地址
        // 发件人的账号
        props.put("mail.user", "**@qq.com");
        // 访问SMTP服务时需要提供的密码 
        props.put("mail.password", "******");
        // 构建授权信息,用于进行SMTP进行身份验证
        Authenticator authenticator = new Authenticator() {
            @Override
            protected PasswordAuthentication getPasswordAuthentication() {
                // 用户名、密码
                String userName = props.getProperty("mail.user");
                String password = props.getProperty("mail.password");
                //发件邮箱
                return new PasswordAuthentication(userName, password);
            }
        };
        Session se = Session.getInstance(props,authenticator);
        //创建一个表示邮件的对象message
        Message mes = new MimeMessage(se);
        try {
            mes.setFrom(new InternetAddress("****@qq.com"));//发件人
            mes.addRecipient(RecipientType.TO, new InternetAddress(to));//设置收件人
            mes.setSubject("*******");//主题
            mes.setContent("******","text/html;charset=UTF-8");
            //发送邮件transport
            Transport.send(mes);
        } catch (AddressException e) {
            e.printStackTrace();
        } catch (MessagingException e) {
            e.printStackTrace();
        }        
    }
    
    public static void main(String[] args) throws Exception {
        sendMail("*****@qq.com","***");
    }

 

 

代码说明:“to”:为需要发送的邮件地址;“code”:为对方接收到的激活码。“mail.user”:为发件人的邮箱地址;“mail_password”:为腾讯给的访问SMTP服务时需要提供的密码,并非邮箱的登录密码。具体获取方式可百度获取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值