• JavaEmail的使用之邮件发送


        有时我们在做程序的时候需要用到收发邮件这件事了...所以一下是JavaEmail这个组件邮件发送的用法了.

    首先要导入javamail1_4_4.zip中的几个包...大家可以到官网下载!

     1 package com.zuxia.test;
     2 
     3 import java.util.Date;
     4 import java.util.Properties;
     5 
     6 import javax.activation.DataHandler;
     7 import javax.activation.FileDataSource;
     8 import javax.mail.BodyPart;
     9 import javax.mail.Multipart;
    10 import javax.mail.Session;
    11 import javax.mail.Transport;
    12 import javax.mail.Message.RecipientType;
    13 import javax.mail.internet.InternetAddress;
    14 import javax.mail.internet.MimeBodyPart;
    15 import javax.mail.internet.MimeMessage;
    16 import javax.mail.internet.MimeMultipart;
    17 
    18 public class SendMessage {
    19 
    20     public static void main(String[] args) {
    21         //创建Session对象
    22         Properties prop=new Properties();
    23         prop.put("mail.smtp.auth", "true");
    24         Session session=Session.getDefaultInstance(prop);
    25         
    26         //创建一封邮件
    27         MimeMessage msg=new MimeMessage(session);
    28         
    29         //设置相关参数
    30         try {
    31             
    32             //发件人
    33             msg.setFrom(new InternetAddress("发件人的地址"));
    34             
    35             //收件人
    36             msg.setRecipient(RecipientType.TO, new InternetAddress("收件人的地址"));
    37             
    38             //主题
    39             msg.setSubject("这是我用程序所发送的邮件哦......o.o这是带有html内容的哦...");
    40             
    41             //内容1
    42             //msg.setText("这是普通的文本内容...");
    43             
    44             //内容2(html内容)这是带有html的内容哦
    45             BodyPart content=new MimeBodyPart();
    46             String str="我是邮件内容哦,这是带有html的内容哦...点击我连接到<a href='http://www.baidu.com'>百度</a>";
    47             str+="<img src='http://t2.baidu.com/it/u=455668578,3458935872&fm=25&gp=0.jpg' />";
    48             
    49             content.setContent(str, "text/html;charset=UTF-8");//设置文本的样式以及编码的格式
    50             
    51             
    52             //内容3(这是带有附件形式的)
    53             
    54 //            BodyPart attachment=new MimeBodyPart();
    55 //            //文件源
    56 //            FileDataSource fds=new FileDataSource("e:/a.xls");
    57 //            
    58 //            attachment.setDataHandler(new DataHandler(fds));//设置句柄
    59 //            
    60 //            //设置附件的名字
    61 //            attachment.setFileName(MimeUtility.encodeText(fds.getName(), "UTF-8", null));
    62 //            
    63             
    64             
    65             //必须将内容转换成邮件中指定的类型
    66             Multipart mp=new MimeMultipart();
    67             mp.addBodyPart(content);
    68             //mp.addBodyPart(attachment);
    69             
    70             msg.setContent(mp);
    71             
    72             //msg.setContent(mp);
    73             
    74             //发送时间
    75             msg.setSentDate(new Date());
    76             
    77             //准备发送
    78             Transport tran=session.getTransport("smtp");
    79             
    80             //连接到服务器
    81             tran.connect("发件人所在的服务器", "发件人的用户名", "发件人的密码");
    82             
    83             //发送
    84             tran.sendMessage(msg, msg.getAllRecipients());
    85             
    86             tran.close();
    87             
    88             System.out.println("发送成功了....");
    89             
    90         } catch (Exception e) {
    91             e.printStackTrace();
    92         }
    93         
    94     }
    95 }
  • 相关阅读:
    ssh免密钥登陆的两种方式
    python 项目实战之装饰器
    python 项目实战之随机杀死程序
    python paramiko外部传参和内部调用命令的方法
    linux screen 工具
    shell删除三天前或者三天内的文件
    CentOS7.3安装Go运行和开发环境
    4.Linq to Xml
    30.第一个Linq 数据库查询
    html 图标库
  • 原文地址:https://www.cnblogs.com/huzi007/p/2740790.html
Copyright © 2020-2023  润新知