使用SimpleEmail邮件发送之QQ邮箱

       最近工作的项目当数据达到预警值的时候要发送邮件给相关人员,于是用了SimpleEmail来发送邮件了,这里是发送到QQ邮箱,至于发送到其他邮箱,都是差不多的设置,知道对应邮箱的服务器设置,配置即可。SimpleEmail是org.apache.commoms下面的,是我们常用的包。

一、查找QQ邮箱SMTP服务器的配置参数(host以及端口)

访问QQ邮箱官方的配置说明即可找到:https://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=167

       可以看到,SMTP服务器的host是:smtp.qq.com,端口465或者687。我是用了SMTP协议的,至于POP3协议的,有兴趣的同学可以自己试试。

二、开启发送者邮箱的POP3/SMTP服务

      并不是拿到了配置参数就可以,还得开启你使用的作为发送者的邮箱的POP3/SMTP服务,并拿到对应的授权码,不需要你邮箱的密码,还是有个单独的授权码,给第三方使用的。接收者的邮箱不需要任何配置。

       登录发送者的QQ邮箱,然后设置-->账户-->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务-->POP3/SMTP服务-->开启。然后通过密保验证以后获得授权码。如果之前开通过,但是不记得授权码了,你可以把这个关闭,再重新打开,重新获得。

谨记:若获得了授权码以后,你修改了QQ邮箱或者独立密码,则该授权码将无效。

三、代码,基于java的。我用QQ邮箱发送邮件给我的163邮箱

SimpleEmail simpleEmail = new SimpleEmail();
		//开启SSL加密
		simpleEmail.setSSLOnConnect(true);
		//SMTP服务器的端口
		simpleEmail.setSslSmtpPort("465");
		//SMTP服务器的名字
		simpleEmail.setHostName("smtp.qq.com");
		//发件人邮箱以及授权码
		simpleEmail.setAuthentication("aaaaaa@qq.com", "ttinmtgrqobljddd");
		//编码集
		simpleEmail.setCharset("UTF-8");
		
		try {
			//收件人邮箱
			simpleEmail.addTo("bbbbbb@163.com");
			//发件人邮箱以及发件人名称
			simpleEmail.setFrom("aaaaaa@qq.com", "XXXX先生:");
			//邮件主题
			simpleEmail.setSubject("告警邮件");
			//邮件内容
			simpleEmail.setMsg("设备发生告警,请尽快处理!");
			simpleEmail.send();
		} catch (Exception e) {
			log.error("发送邮件失败", e);
			throw new Exception("发送邮件失败");
		}

相关代码的意思已经在注释里面了,一目了然。经测试,发送成功。

四、邮箱收到消息如下:

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用JavaMailSender发送附件邮件qq邮箱的示例代码: ```java // 创建一个JavaMailSender实例 JavaMailSenderImpl mailSender = new JavaMailSenderImpl(); mailSender.setHost("smtp.qq.com"); // 设置SMTP服务器地址 mailSender.setPort(587); // 设置SMTP服务器端口号 mailSender.setUsername("你的QQ邮箱账号"); // 设置发送邮件的账号 mailSender.setPassword("你的QQ邮箱授权码"); // 设置发送邮件的授权码 // 创建一个MimeMessage实例 MimeMessage message = mailSender.createMimeMessage(); // 使用MimeMessageHelper添加邮件内容和附件 MimeMessageHelper helper = new MimeMessageHelper(message, true); helper.setFrom("你的QQ邮箱地址"); // 设置发件人邮箱 helper.setTo("收件人邮箱地址"); // 设置收件人邮箱 helper.setSubject("邮件主题"); // 设置邮件主题 helper.setText("邮件正文"); // 设置邮件正文 // 添加附件 FileSystemResource resource = new FileSystemResource(new File("附件路径")); helper.addAttachment("附件名称", resource); // 发送邮件 mailSender.send(message); ``` 其中,`setHost()`方法设置SMTP服务器地址,`setPort()`方法设置SMTP服务器端口号,`setUsername()`方法设置QQ邮箱账号,`setPassword()`方法设置QQ邮箱授权码。`MimeMessageHelper`类的`addAttachment()`方法用于添加附件,第一个参数为附件名称,第二个参数为附件文件资源。`FileSystemResource`类是Spring Framework提供的文件系统资源类,用于访问文件系统中的文件。发送邮件时,调用`mailSender.send()`方法即可。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值