JavaMail发送邮件带有附件

发送带附件的邮件只是在上一篇博客中稍加修改即可


public static void main(String[] args) {
//创建一个属性对象
Properties props=new Properties();
//指定SMTP服务器
props.put("mail.smtp.host","smtp.qq.com");
//指定是否需要SMTP验证
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port","25");
props.put("mail.transport.protocol","smtp");
//创建会话
Session session=Session.getInstance(props);
session.setDebug(true);
//创建一个Message对象
Message mess=new MimeMessage(session);
try{
mess.setFrom(new InternetAddress("156003025@qq.com"));//发件人
//收件人
mess.setRecipient(RecipientType.TO, new InternetAddress("674937561@qq.com"));
mess.setSentDate(new Date());
mess.setSubject("my java mail");
mess.saveChanges();
//发送带附件的邮件
Multipart multis=new MimeMultipart();
BodyPart body1=new MimeBodyPart();
body1.setText(new String("hello,lvhongfen".getBytes(),"ISO8859-1"));
multis.addBodyPart(body1);//将邮件内容放到mutis中
BodyPart body2=new MimeBodyPart();
FileDataSource fds=new FileDataSource("C:/Users/DELL0809/Desktop/日日总结/06.04~06.08.txt");
body2.setDataHandler(new DataHandler(fds));
String fileName=fds.getName();
fileName=new String(fileName.getBytes(),"ISO8859-1");
body2.setFileName(fileName);//设定附件文件名
multis.addBodyPart(body2);
//将附件放入mutis中
mess.setContent(multis);//发送的所有内容

//指定邮件的优先级 1:紧急 3:普通  5:缓慢
mess.setHeader("X-Priority", "1");
//创建一个传输对象
Transport trans=session.getTransport("smtp");
//连接SMTP服务器   
trans.connect("smtp.qq.com","156003025@qq.com","***");//这里是发件人的邮箱用户名和密码(我的密码就先隐藏啦)
trans.sendMessage(mess,mess.getAllRecipients());
trans.close();
}catch(Exception e){
e.printStackTrace();
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值