使用apache EmailAttachment发送邮件

这篇博客记录了公司业务中使用Java发送邮件的需求,特别是针对QQ邮箱的配置。QQ邮箱要求使用授权码而非明文密码,详细步骤被整理出来以便日后参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

公司因为业务需要,需要实现java发送邮件功能,不同的邮箱相关代码有所不同,特记录,方便下次使用


QQ邮箱如下:QQ邮箱是做的比较好的一个,对于密码不是明文保存,而是需要用户在QQ邮箱内生成对应的授权码,将授权码写入到密码当中

// 附件,可以定义多个附件对象
			EmailAttachment attachment = new EmailAttachment();
<span style="white-space:pre">			</span>//CreateFile()为自定义方法,返回一个文件对象,做附件用
			attachment.setPath(CreateFile());
			attachment.setDisposition(EmailAttachment.ATTACHMENT);
			attachment.setDescription("Picture of John");
			//
			MultiPartEmail email = new MultiPartEmail();
			// smtp host
			email.setHostName("smtp.qq.com");
			// 端口号
			email.setSmtpPort(587);
			// 登陆邮件服务器的用户名和密码
			email.setAuthentication("97504188@qq.com", "cabtijswujlsb");
			// 接收人
			email.addTo("97504188@qq.com");

			// 发送人
			email.setFrom("97504188@qq.com", name);
			// 标题
			email.setSubject(name);
			// 邮件内容
			email.setMsg("--------------------");
			// 添加附件
			email.attach(attachment);
			// 发送
			email.send();


139邮箱:

// 附件,可以定义多个附件对象
			EmailAttachment attachment = new EmailAttachment();
			attachment.setPath(CreateFile(list, listacc, dir, name));
			attachment.setDisposition(EmailAttachment.ATTACHMENT);
			attachment.setDescription("Picture of John");
			//
			MultiPartEmail email = new MultiPartEmail();
			// smtp host
			email.setHostName("smtp.139.com");
			// 登陆邮件服务器的用户名和密码
			email.setAuthentication("13549504275@139.com", "123456789");
			// 接收人
			email.addTo("4448466@qq.com");

			// 发送人
			email.setFrom("13549504275@139.com", name);
			// 标题
			email.setSubject(name);
			// 邮件内容
			email.setMsg("--------------------");
			// 添加附件
			email.attach(attachment);
			// 发送
			email.send();



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值