登录
首页 >  数据库 >  MySQL

java实现发送qq邮件

来源:SegmentFault

时间:2023-01-18 17:04:39 227浏览 收藏

哈喽!今天心血来潮给大家带来了《java实现发送qq邮件》,想必大家应该对数据库都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到MySQL、Java、后端,若是你正在学习数据库,千万别错过这篇文章~希望能帮助到你!

//测试邮件

public static void main(String[] args) throws Exception {
    Properties props = config();
    // 构建授权信息,用于进行SMTP进行身份验证
    Authenticator authenticator = new Authenticator() {
        protected PasswordAuthentication getPasswordAuthentication() {
            // 用户名、密码
            String userName = props.getProperty("mail.user");
            String password = props.getProperty("mail.password");
            return new PasswordAuthentication(userName, password);
        }
    };
    // 使用环境属性和授权信息,创建邮件会话
    Session mailSession = Session.getInstance(props, authenticator);
    // 创建邮件消息
    MimeMessage message = new MimeMessage(mailSession);
    // 设置发件人
    InternetAddress form = new InternetAddress(props.getProperty("mail.user"));
    message.setFrom(form);
    // 设置收件人的邮箱
    List email = new ArrayList();
    email.add("***@163.com");
    email.add("***@qq.com");
    InternetAddress[] to_email = new InternetAddress[email.size()];
    for (int i = 0; i  email = new ArrayList();
    //email.add("**@163.com");
    //message.setRecipients(Message.RecipientType.TO, String.valueOf(email));

    // 设置邮件的内容体
    //message.setContent("新闻联播", "text/html;charset=UTF-8");

    /*MimeBodyPart messageBodyPart =new MimeBodyPart();
    Multipart multipart = new MimeMultipart();
    multipart.addBodyPart(messageBodyPart);
    File attachment;
    attachment= new File("E:/video/青玉案-元夕.txt");
    DataSource fileDataSource=new FileDataSource(attachment);
    messageBodyPart.setDataHandler(new DataHandler(fileDataSource));
    messageBodyPart.setFileName(attachment.getName());
    multipart.addBodyPart(messageBodyPart);
    message.setContent(multipart);*/

    //文本
    //String content = SendMailUtil.readHtmlContent("E:/video/青玉案-元夕.txt");
    String content = SendMailUtil.readHtmlContent("E:/video/video02.mp4");
    content = content.replaceAll("\\{\\{title\\}\\}","==============ceshi=================");
    message.setContent(content.toString(),"text/html;charset=UTF-8");
    //message.setText("明月别枝惊鹊,清风半夜鸣蝉。稻花香里说丰年,听取蛙声一片。","text/html;charset=UTF-8");
    Transport.send(message);
}

/**
 * 自定义配置
 */
private static Properties config(){
    Properties props = new Properties();
    // 表示SMTP发送邮件,必须进行身份验证
    props.put("mail.smtp.auth", "true");
    //此处填写SMTP服务器
    props.put("mail.smtp.host", "smtp.qq.com");
    //端口号,QQ邮箱端口587
    props.put("mail.smtp.port", "587");
    // 此处填写,写信人的账号
    props.put("mail.user", "***@qq.com");
    // 此处填写16位STMP口令
    props.put("mail.password", "*****");
    return props;
}

今天带大家了解了MySQL、Java、后端的相关知识,希望对你有所帮助;关于数据库的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表