zoukankan      html  css  js  c++  java
  • 邮件发送工具类

    package com.ujiuy.utils;

    import javax.activation.DataHandler;

    import javax.activation.FileDataSource;

    import javax.mail.*;

    import javax.mail.internet.*;

    import java.io.File;

    import java.util.Properties;

    public class MailUtils {

    private static String smtp_host = "smtp.126.com";

    private static String username = "zhaojing1144@126.com";

    private static String password = "qaz123";

    /*

    * 参数一:收件人的邮箱地址

    * 参数二:邮件标题

    * 参数三:邮件内容

    */

    //发送简单邮件

    public static void sendSimpleMail(String to, String subject, String msg) {

    Properties props = new Properties();

    props.setProperty("mail.host", smtp_host);

    props.setProperty("mail.transport.protocol", "smtp");

    props.setProperty("mail.smtp.auth", "true");

    // 创建验证器

            Authenticator auth = new Authenticator() {

                public PasswordAuthentication getPasswordAuthentication() {

                    // 密码验证

                    return new PasswordAuthentication("zhaojing,写自己的" "qaz1.写自己的");// 邮箱的授权码

                }

            };

    try {

    // 1.创建会话

    Session session = Session.getInstance(props,auth);

    // 开启Session的debug模式,这样就可以查看到程序发送Email的运行状态

    session.setDebug(true);

    // 2.获取传输对象

    Transport transport = session.getTransport();

    // 3.设置连接

    transport.connect("smtp.126.com", username, password);

    // 4.创建邮件

    Message message = new MimeMessage(session);

    message.setFrom(new InternetAddress(username));//发送人

    message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));//接收人

    message.setSubject(subject);//标题

    message.setContent(msg, "text/html;charset=utf-8");//内容

    // 5.发送邮件

    transport.sendMessage(message, message.getAllRecipients());

    } catch (Exception e) {

    e.printStackTrace();

    throw new RuntimeException("邮件发送失败");

    }

    }

    //发送带有附件的邮件

    public static void sendAttachmentMail(String to, String subject, String msg, File file) {

    Properties props = new Properties();

    props.setProperty("mail.host", smtp_host);

    props.setProperty("mail.transport.protocol", "smtp");

    props.setProperty("mail.smtp.auth", "true");

    // 创建验证器

            Authenticator auth = new Authenticator() {

                public PasswordAuthentication getPasswordAuthentication() {

                    // 密码验证

                    return new PasswordAuthentication("zhaojin写自己的", "qaz写自己的");// 邮箱的授权码

                }

            };

    try {

    // 1.创建会话

    Session session = Session.getInstance(props,auth);

    // 开启Session的debug模式,这样就可以查看到程序发送Email的运行状态

    session.setDebug(true);

    // 2.获取传输对象

    Transport transport = session.getTransport();

    // 3.设置连接

    transport.connect("smtp.126.com", username, password);

    // 4.创建邮件

    // 邮件头

    Message message = new MimeMessage(session);

    message.setFrom(new InternetAddress(username));

    message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));

    //message.addRecipients(MimeMessage.RecipientType.CC, InternetAddress.parse(username));

    message.setSubject(subject);

    // 邮件体(发送的字符串内容+附件)

    Multipart multipart = new MimeMultipart();

    // 信息(发送的字符串内容)

    BodyPart content = new MimeBodyPart();

    content.setContent(msg, "text/html;charset=utf-8");

    // 添加信息

    multipart.addBodyPart(content);

    // 附件

    BodyPart attachment = new MimeBodyPart();

    //附件对象----->路径------>附件转换为DataSource源------>DataSource源封装到附件对象中

    String filePath = file.getPath();

    FileDataSource fileDataSource = new FileDataSource(filePath);

    attachment.setDataHandler(new DataHandler(fileDataSource));

    //设置接收到 的附件名

    String filename = fileDataSource.getName();

    attachment.setFileName(MimeUtility.encodeText(filename));

    // 添加附件

    multipart.addBodyPart(attachment);

    // 5.发送邮件

    message.setContent(multipart);

    transport.sendMessage(message, message.getAllRecipients());

    } catch (Exception e) {

    e.printStackTrace();

    throw new RuntimeException("邮件发送失败");

    }

    }

    /*public static void main(String[] args) {

    //sendSimpleMail("1596994348@qq.com", "测试邮件", "Hello World");

    String path = "e:\arcs\arc.doc";

    File file = new File(path);

    sendAttachmentMail("2572482562@qq.com", "测试邮件", "oa文档", file);

    }*/

    }

    package com.ujiuy.utils;
    import javax.activation.DataHandler;import javax.activation.FileDataSource;import javax.mail.*;import javax.mail.internet.*;import java.io.File;import java.util.Properties;
    public class MailUtils {private static String smtp_host = "smtp.126.com";private static String username = "zhaojing1144@126.com";private static String password = "qaz123";
    /* * 参数一:收件人的邮箱地址 * 参数二:邮件标题 * 参数三:邮件内容 *///发送简单邮件public static void sendSimpleMail(String to, String subject, String msg) {Properties props = new Properties();props.setProperty("mail.host", smtp_host);props.setProperty("mail.transport.protocol", "smtp");props.setProperty("mail.smtp.auth", "true");// 创建验证器        Authenticator auth = new Authenticator() {            public PasswordAuthentication getPasswordAuthentication() {                // 密码验证                return new PasswordAuthentication("zhaojing1144", "qaz1234");// 邮箱的授权码            }        };try {// 1.创建会话Session session = Session.getInstance(props,auth);// 开启Session的debug模式,这样就可以查看到程序发送Email的运行状态session.setDebug(true);// 2.获取传输对象Transport transport = session.getTransport();// 3.设置连接transport.connect("smtp.126.com", username, password);// 4.创建邮件Message message = new MimeMessage(session);message.setFrom(new InternetAddress(username));//发送人message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));//接收人message.setSubject(subject);//标题message.setContent(msg, "text/html;charset=utf-8");//内容// 5.发送邮件transport.sendMessage(message, message.getAllRecipients());} catch (Exception e) {e.printStackTrace();throw new RuntimeException("邮件发送失败");}}
    //发送带有附件的邮件public static void sendAttachmentMail(String to, String subject, String msg, File file) {Properties props = new Properties();props.setProperty("mail.host", smtp_host);props.setProperty("mail.transport.protocol", "smtp");props.setProperty("mail.smtp.auth", "true");// 创建验证器        Authenticator auth = new Authenticator() {            public PasswordAuthentication getPasswordAuthentication() {                // 密码验证                return new PasswordAuthentication("zhaojing1144", "qaz1234");// 邮箱的授权码            }        };try {// 1.创建会话Session session = Session.getInstance(props,auth);// 开启Session的debug模式,这样就可以查看到程序发送Email的运行状态session.setDebug(true);// 2.获取传输对象Transport transport = session.getTransport();// 3.设置连接transport.connect("smtp.126.com", username, password);// 4.创建邮件// 邮件头Message message = new MimeMessage(session);message.setFrom(new InternetAddress(username));message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));//message.addRecipients(MimeMessage.RecipientType.CC, InternetAddress.parse(username));message.setSubject(subject);// 邮件体(发送的字符串内容+附件)Multipart multipart = new MimeMultipart();// 信息(发送的字符串内容)BodyPart content = new MimeBodyPart();content.setContent(msg, "text/html;charset=utf-8");// 添加信息multipart.addBodyPart(content);// 附件BodyPart attachment = new MimeBodyPart();//附件对象----->路径------>附件转换为DataSource源------>DataSource源封装到附件对象中String filePath = file.getPath();FileDataSource fileDataSource = new FileDataSource(filePath);attachment.setDataHandler(new DataHandler(fileDataSource));//设置接收到 的附件名String filename = fileDataSource.getName();attachment.setFileName(MimeUtility.encodeText(filename));// 添加附件multipart.addBodyPart(attachment);// 5.发送邮件message.setContent(multipart);transport.sendMessage(message, message.getAllRecipients());} catch (Exception e) {e.printStackTrace();throw new RuntimeException("邮件发送失败");}}
    /*public static void main(String[] args) {//sendSimpleMail("1596994348@qq.com", "测试邮件", "Hello World");String path = "e:\arcs\arc.doc";File file = new File(path);sendAttachmentMail("2572482562@qq.com", "测试邮件", "oa文档", file);}*/
    }

  • 相关阅读:
    模板层
    视图层
    路由层
    图书管理系统
    orm基础
    django目录结构介绍
    django基础
    20145211 《Java程序设计》第1周学习总结——小荷才露尖尖角
    实迷途其未远,觉今是而昨非——问卷调查
    20145203盖泽双问卷调查
  • 原文地址:https://www.cnblogs.com/meani/p/12698393.html
Copyright © 2011-2022 走看看