博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java发送邮件的方法
阅读量:6337 次
发布时间:2019-06-22

本文共 3778 字,大约阅读时间需要 12 分钟。

转载自:

代码1:使用spring的邮件服务

1 /**  2   *用spring mail 发送邮件,依赖jar:spring.jar,activation.jar,mail.jar   3   */      4   public static void sendFileMail() throws MessagingException {   5           JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();   6      7           // 设定mail server   8           senderImpl.setHost("smtp.126.com");   9           senderImpl.setUsername("yuhan0");  10           senderImpl.setPassword("******");  11           // 建立HTML邮件消息  12           MimeMessage mailMessage = senderImpl.createMimeMessage();  13           // true表示开始附件模式  14           MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage, true, "utf-8");  15     16           // 设置收件人,寄件人  17           messageHelper.setTo("slimes@126.com");  18           messageHelper.setFrom("yuhan0@126.com");  19           messageHelper.setSubject("测试邮件!");  20           // true 表示启动HTML格式的邮件  21           messageHelper.setText("

你好:附件!!

", true); 22 23 FileSystemResource file1 = new FileSystemResource(new File("d:/logo.jpg")); 24 FileSystemResource file2 = new FileSystemResource(new File("d:/读书.txt")); 25 // 添加2个附件 26 messageHelper.addAttachment("logo.jpg", file1); 27 28 try { 29 //附件名有中文可能出现乱码 30 messageHelper.addAttachment(MimeUtility.encodeWord("读书.txt"), file2); 31 } catch (UnsupportedEncodingException e) { 32 e.printStackTrace(); 33 throw new MessagingException(); 34 } 35 // 发送邮件 36 senderImpl.send(mailMessage); 37 System.out.println("邮件发送成功....."); 38 39 }

代码2:使用apache commons-email 发送邮件

1 /**  2   *用apache commons-email 发送邮件  3   *依赖jar:commons-email.jar,activation.jar,mail.jar  4   */   5   public static void sendMutiMessage() {   6      7           MultiPartEmail email = new MultiPartEmail();   8           String[] multiPaths = new String[] { "D:/1.jpg", "D:/2.txt" };   9     10           List
list = new ArrayList
(); 11 for (int j = 0; j < multiPaths.length; j++) { 12 EmailAttachment attachment = new EmailAttachment(); 13 //判断当前这个文件路径是否在本地 如果是:setPath 否则 setURL; 14 if (multiPaths[j].indexOf("http") == -1) { 15 attachment.setPath(multiPaths[j]); 16 } else { 17 try { 18 attachment.setURL(new URL(multiPaths[j])); 19 } catch (MalformedURLException e) { 20 e.printStackTrace(); 21 } 22 } 23 attachment.setDisposition(EmailAttachment.ATTACHMENT); 24 attachment.setDescription("Picture of John"); 25 list.add(attachment); 26 } 27 28 try { 29 // 这里是发送服务器的名字: 30 email.setHostName("smtp.126.com"); 31 // 编码集的设置 32 email.setCharset("utf-8"); 33 // 收件人的邮箱 34 email.addTo("slimes@126.com"); 35 // 发送人的邮箱 36 email.setFrom("yuhan0@126.com"); 37 // 如果需要认证信息的话,设置认证:用户名-密码。分别为发件人在邮件服务器上的注册名称和密码 38 email.setAuthentication("yuhan0", "******"); 39 email.setSubject("这是一封测试邮件"); 40 // 要发送的信息 41 email.setMsg("
邮件测试内容"); 42 43 for (int a = 0; a < list.size(); a++) //添加多个附件 44 { 45 email.attach(list.get(a)); 46 } 47 // 发送 48 email.send(); 49 } catch (EmailException e) { 50 e.printStackTrace(); 51 } 52 }

 

你可能感兴趣的文章
DHCP在企业网中的应用
查看>>
2008的共享服务器搭建
查看>>
Linux常用的命令
查看>>
已经不再更新新浪、网易及CSDN博客了!
查看>>
虚拟机克隆后修改mac地址和ip地址
查看>>
解决数据库乱码问题【转】
查看>>
注册表操作类【原】
查看>>
清远市第一中学大学城网
查看>>
环回接口(loopback interface)的新认识
查看>>
LINQ之路13:LINQ Operators之连接(Joining)
查看>>
数据结构--队列之C数组实现
查看>>
通过创建存储过程显示数据表的字段名和说明
查看>>
html5-css动画-2d
查看>>
字符串函数总结
查看>>
WAMP安装,期间提示丢失VCRUNTIME140.dll
查看>>
剑指offer 面试题43 n个骰子的点数 DP
查看>>
娱乐之佛像(转载)
查看>>
给一系列的div中的第一个添加class
查看>>
首尔最高旋转餐厅后厨一探究竟
查看>>
关于IOS的屏幕适配(iPhone)——资源适配
查看>>