Springboot实现QQ邮件发送任务
导入开发jar包
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.3.0</version>
</dependency>
SpringBoot发送QQ邮件实现类
package Tools;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.*;
import javax.mail.internet.*;
import java.io.File;
import java.util.Date;
import java.util.Properties;
import static sun.java2d.cmm.ColorTransform.In;
public class SendEmail {
private void sendMail(String descMail,String Title,String Content, File[] files){
final String fromEmail="";
final String SmtpCode="";
String ContentType="text/html;charset=utf-8";
Properties properties = new Properties();
properties.setProperty("mail.smtp.host","smtp.qq.com");
properties.setProperty("mail.smtp.port","465");
properties.setProperty("mail.smtp.auth","true");
properties.setProperty("mail.debug","true");
properties.setProperty("mail.transport.protocol","smtp");
properties.setProperty("mail.smtp.ssl.enable","true");
Session session = Session.getInstance(properties, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(fromEmail,SmtpCode);
}
});
Message message = new MimeMessage(session);
try{
message.setFrom( new InternetAddress(fromEmail));
message.setRecipient(Message.RecipientType.TO,new InternetAddress(descMail));
message.setSubject((Title));
if(files !=null && files.length>=0){
MimeMultipart mimeMultipart = new MimeMultipart();
BodyPart contentpart = new MimeBodyPart();
contentpart.setContent(Content,ContentType);
mimeMultipart.addBodyPart(contentpart);
for(File file:files){
MimeBodyPart attachment = new MimeBodyPart();
DataHandler dh=new DataHandler(new FileDataSource(file));
attachment.setDataHandler(dh);
attachment.setFileName(MimeUtility.encodeText((dh.getName())));
mimeMultipart.addBodyPart(attachment);
}
mimeMultipart.setSubType("mixed");
message.setContent(mimeMultipart);
message.saveChanges();
}else{
message.setContent(Content,ContentType);
}
Transport transport = session.getTransport();
transport.connect(fromEmail,SmtpCode);
Transport.send(message);
}catch (Exception e){
e.getMessage();
}
}
}