• JavaMail


    import javax.mail.*;
    import javax.mail.internet.AddressException;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;
    import java.util.Properties;
    
    /**
     * Created by YuWenHui on 2017/4/20 0020.
     */
    
    public class Demo {
        @org.junit.Test
        public void fun1() throws Exception {
    //        获得session
            Properties properties = new Properties();
            properties.setProperty("mail.host","smtp.qq.com");
            properties.setProperty("mail.smtp.auth","true");
    
            Authenticator auth = new Authenticator() {
                @Override
                protected PasswordAuthentication getPasswordAuthentication() {
    //密码和账号,这里的账号不能加@qq.com
    return new PasswordAuthentication("xxx","xxx"); } }; Session session = Session.getInstance(properties,auth); // 创建MimeMessage MimeMessage message = new MimeMessage(session); message.setFrom(new InternetAddress("xxx@qq.com"));//设置发件人 message.setRecipients(MimeMessage.RecipientType.TO,"xxx@qq.com");//设置收件人 message.setSubject("这是Javamail的测试邮件"); message.setContent("看玩就删","text/html;charset=utf-8"); // 发送 Transport.send(message); } }

    添加附件模块

     /*
             * 当发送包含附件的邮件时,邮件体就为多部件形式!
             * 1. 创建一个多部件的部件内容!MimeMultipart
             *   MimeMultipart就是一个集合,用来装载多个主体部件!
             * 2. 我们需要创建两个主体部件,一个是文本内容的,另一个是附件的。
             *   主体部件叫MimeBodyPart
             * 3. 把MimeMultipart设置给MimeMessage的内容!
             */
            MimeMultipart list = new MimeMultipart();//创建多部分内容
    
            // 创建MimeBodyPart
            MimeBodyPart part1 = new MimeBodyPart();
            // 设置主体部件的内容
            part1.setContent("这是一封包含附件的垃圾邮件", "text/html;charset=utf-8");
            // 把主体部件添加到集合中
            list.addBodyPart(part1);
    
    
            // 创建MimeBodyPart
            MimeBodyPart part2 = new MimeBodyPart();
            part2.attachFile(new File("F:xxx.jpg"));//设置附件的内容
            part2.setFileName(MimeUtility.encodeText("xxx.jpg"));//设置显示的文件名称,其中encodeText用来处理中文乱码问题
            list.addBodyPart(part2);
    
            message.setContent(list);//把它设置给邮件作为邮件的内容。

    利用jar包来进行

        (F:常用综合常用jar包JavaMailitcast-tools-1.4.2.jar)

     @Test
        public  void  fun2() throws Exception{
            Session session = MailUtils.createSession("smtp.qq.com","1623851096","yu1623851096");
            Mail mail = new Mail("1623851096@qq.com","987039024@qq.com","这是经过包装的测试文件","余文辉是大帅哥");
            AttachBean attachBean = new AttachBean(new File("D:/Pictures/doubi.jpg"),"逗比.jpg");
            mail.addAttach(attachBean);
            MailUtils.send(session,mail);
        }
  • 相关阅读:
    在vmware workstation10上安装ubuntu14.04,出现以下问题
    经典句
    杂文
    matlab里textread出现错误“Trouble reading floating point number from file (row 1, field 1)”
    Nginx配置杂记(转)
    mysql经典案例分析
    Git查看、删除、重命名远程分支和tag(转)
    nginx下开启pathinfo模式
    ubuntu-apache如何解决跨域资源访问
    c语言插入排序
  • 原文地址:https://www.cnblogs.com/yuwenhui/p/6737963.html
Copyright © 2020-2023  润新知