zoukankan      html  css  js  c++  java
  • javaMail

    知识点:javaMail api包含Session,Message,Transport,InternetAddress
    Session:封装一组与邮件配置有关的方法,通过java.util.Properties或得配置信息,通过getdefaultInstance()获得邮件会话.
    Message:邮件信息类,主要方法:
    setFrom();setSubject();setContent();setSentDate();setText();addRecipient(收件人类型,收件邮箱);
    Transport:邮件传输类Transport.send(message);

    InternetAddress:用户的邮箱地址
    1.发送纯文本文件

    package main;
    
    import java.util.Properties;
    import javax.mail.Authenticator;
    import javax.mail.Message;
    import javax.mail.MessagingException;
    import javax.mail.PasswordAuthentication;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;
    
    public class send2 {
        public void SendMail() throws MessagingException{
            Authenticator auth = new Authenticator() {
                public PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication("ppag38615f19c8c8@sohu.com(发送邮箱)", "发送邮箱密码");
                }
            };//获取认证验证
    
            Properties prop=new Properties();
            prop.setProperty("mail.host","smtp.sohu.com");
            prop.setProperty("mail.smtp.auth", "true");
            prop.setProperty("mail.transport.protocol", "SMTP");//邮件配置信息
            Session s=Session.getDefaultInstance(prop,auth);
    
            MimeMessage me=new MimeMessage(s);
            InternetAddress to=new InternetAddress("1278808836@qq.com");
            me.addRecipient(Message.RecipientType.TO, to);
            me.setFrom(new InternetAddress("ppag38615f19c8c8@sohu.com")); // 设置发送者
            //me.setContent("hello world","text/html;utf-8");
            me.setSubject("主题");
            me.setText("hello");
    
            Transport t=s.getTransport("smtp");
            t.send(me);
    
        }
        public static void main(String[] args) throws MessagingException {
            new send2().SendMail();
        }
    
    }
    

    2.发送html格式的文件

    package main;
    
    import java.io.BufferedReader;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    import java.util.Properties;
    import javax.mail.Authenticator;
    import javax.mail.Message;
    import javax.mail.MessagingException;
    import javax.mail.PasswordAuthentication;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;
    
    public class send2 {
        public void SendMail() throws MessagingException, IOException{
            Authenticator auth = new Authenticator() {
                public PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication("ppag38615f19c8c8@sohu.com", "发送密码");
                }
            };//获取认证验证
    
            Properties prop=new Properties();
            prop.setProperty("mail.host","smtp.sohu.com");
            prop.setProperty("mail.smtp.auth", "true");
            prop.setProperty("mail.transport.protocol", "SMTP");//邮件配置信息
            Session s=Session.getDefaultInstance(prop,auth);
    
            MimeMessage me=new MimeMessage(s);
            InternetAddress to=new InternetAddress("1278808836@qq.com");
            me.addRecipient(Message.RecipientType.TO, to);
            me.setFrom(new InternetAddress("ppag38615f19c8c8@sohu.com")); // 设置发送者
            //me.setContent("hello world","text/html;utf-8");
            me.setSubject("主题");
            //me.setText("hello");
            String source="C:\Users\佩\Desktop\2.html";
            String content="";
            String line=null;
            BufferedReader br=new BufferedReader(new FileReader(source));
            while((line=br.readLine())!=null){
                content+=line;
            }
            br.close();
            me.setContent(content, "text/html;charset=utf-8");
            Transport t=s.getTransport("smtp");
            t.send(me);
    
        }
        public static void main(String[] args) throws MessagingException, IOException {
            new send2().SendMail();
        }
    
    }
    

    3.发送带附件的邮箱

    package main;
    
    import java.io.BufferedReader;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    import java.util.Properties;
    
    import javax.activation.DataHandler;
    import javax.activation.DataSource;
    import javax.activation.FileDataSource;
    import javax.mail.Authenticator;
    import javax.mail.BodyPart;
    import javax.mail.Message;
    import javax.mail.MessagingException;
    import javax.mail.Multipart;
    import javax.mail.PasswordAuthentication;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeBodyPart;
    import javax.mail.internet.MimeMessage;
    import javax.mail.internet.MimeMultipart;
    import javax.mail.internet.MimeUtility;
    
    public class send2 {
        public void SendMail() throws MessagingException, IOException{
            Authenticator auth = new Authenticator() {
                public PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication("ppag38615f19c8c8@sohu.com", "04143114wp");
                }
            };//获取认证验证
    
            Properties prop=new Properties();
            prop.setProperty("mail.host","smtp.sohu.com");
            prop.setProperty("mail.smtp.auth", "true");
            prop.setProperty("mail.transport.protocol", "SMTP");//邮件配置信息
            Session s=Session.getDefaultInstance(prop,auth);
    
            MimeMessage me=new MimeMessage(s);
            InternetAddress to=new InternetAddress("1278808836@qq.com");
            me.addRecipient(Message.RecipientType.TO, to);
            me.setFrom(new InternetAddress("ppag38615f19c8c8@sohu.com")); // 设置发送者
            //me.setContent("hello world","text/html;utf-8");
            me.setSubject("主题:创建带附件的邮件");
    
            BodyPart bp=new MimeBodyPart();
            bp.setText("带附件的邮件");
            Multipart mp=new MimeMultipart();
            mp.addBodyPart(bp);
    
            BodyPart atachment=new MimeBodyPart();
            String source="C:\Users\佩\Desktop\1.doc";
            DataSource ds=new FileDataSource(source);//创建数据源
            atachment.setDataHandler(new DataHandler(ds));//创建执行文件的指针
            atachment.setFileName(MimeUtility.encodeWord("1.doc"));//设置附件中的文件名
            mp.addBodyPart(atachment);
    
            me.setContent(mp, "text/html;charset=utf-8");
            Transport t=s.getTransport("smtp");
            t.send(me);
    
        }
        public static void main(String[] args) throws MessagingException, IOException {
            new send2().SendMail();
        }
    
    }
    
  • 相关阅读:
    cefsharp webBrowser Javascript 打开winForm界面
    大数据抓取采集框架(摘抄至http://blog.jobbole.com/46673/)
    Java对象序列化与RMI
    Java与编码问题串讲之二–如何理解java采用Unicode编码
    android中清空一个表---类似truncate table 表名 这样的功能 android sqlite 清空数据库的某个表
    使用Camera功能 AREA的理解
    去掉android的屏幕上的title bar
    Android View的onTouchEvent和OnTouch区别
    关于安卓HTTP请求用HttpUrlConnection还是HttpClient好
    如何确定拍照时,相机屏幕是横屏or竖屏?
  • 原文地址:https://www.cnblogs.com/wangxiaopei/p/8551274.html
Copyright © 2011-2022 走看看